openapi: 3.0.0
servers:
  - url: https://api.figshare.com/v2
info:
  description: Figshare apiv2. Using Swagger 2.0
  title: Figshare API
  version: 2.0.0
  x-apisguru-categories:
    - open_data
  x-logo:
    backgroundColor: "#FFFFFF"
    url: https://user-images.githubusercontent.com/21603/27885832-5da28e32-61d1-11e7-8811-ed7238df2c20.png
  x-origin:
    - format: openapi
      url: http://docs.figshare.com/swagger.json
      version: "3.0"
  x-providerName: figshare.com
paths:
  /account:
    get:
      description: Account information for token/personal token
      operationId: private_account
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Account"
          description: OK. Account representation
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account information
      tags:
        - other
  /account/articles:
    get:
      description: Get Own Articles
      operationId: private_articles_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. An array of articles belonging to the account
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Articles
      tags:
        - articles
    post:
      description: Create a new Article by sending article information
      operationId: private_article_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticleCreate"
        description: Article description
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarnings"
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create new Article
      tags:
        - articles
      x-subcategory: Private Article
  /account/articles/export:
    get:
      description: Return status on all reports generated for the account from the oauth credentials
      operationId: account_article_report
      parameters:
        - description: A group ID to filter by
          in: query
          name: group_id
          required: false
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/AccountReport"
                type: array
          description: OK. An array of account report entries
        "400":
          description: Bad Request
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Account Article Report
      tags:
        - articles
    post:
      description: Initiate a new Article Report for this Account. There is a limit of 1 report per day.
      operationId: account_article_report_generate
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccountReport"
          description: OK. AccountReport created.
        "429":
          description: Too Many Requests
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Initiate a new Report
      tags:
        - articles
  /account/articles/search:
    post:
      description: Returns a list of private articles filtered by the search parameters
      operationId: private_articles_search
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PrivateArticleSearch"
        description: Search Parameters
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ArticleWithProject"
                type: array
          description: OK. An array of articles
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Articles search
      tags:
        - articles
  "/account/articles/{article_id}":
    delete:
      description: Delete an article
      operationId: private_article_delete
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete article
      tags:
        - articles
      x-subcategory: Private Article
    get:
      description: View a private article
      operationId: private_article_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleCompletePrivate"
          description: OK. Article representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Article details
      tags:
        - articles
      x-subcategory: Private Article
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      description: Updating an article by passing body parameters; request can also be made with the PATCH method.
      operationId: private_article_update
      requestBody:
        $ref: "#/components/requestBodies/ArticleUpdate"
      responses:
        "205":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarningsUpdate"
          description: Reset Content
          headers:
            Location:
              description: Location of newly created article
              schema:
                format: link
                type: string
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update article
      tags:
        - articles
      x-subcategory: Private Article
  "/account/articles/{article_id}/authors":
    get:
      description: List article authors
      operationId: private_article_authors_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Author"
                type: array
          description: OK. Authors list for article
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List article authors
      tags:
        - articles
      x-subcategory: Private Article Authors
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Associate new authors with the article. This will add new authors to the list of already associated authors
      operationId: private_article_authors_add
      requestBody:
        $ref: "#/components/requestBodies/AuthorsCreator"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of list of authors
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add article authors
      tags:
        - articles
      x-subcategory: Private Article Authors
    put:
      description: Associate new authors with the article. This will remove all already associated authors and add these new ones
      operationId: private_article_authors_replace
      requestBody:
        $ref: "#/components/requestBodies/AuthorsCreator"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of list of authors
              schema:
                format: url
                type: string
        "400":
          description: Bad Request. Article ID must be an integer and bigger than 0. Author with ID Not Found.
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Replace article authors
      tags:
        - articles
      x-subcategory: Private Article Authors
  "/account/articles/{article_id}/authors/{author_id}":
    delete:
      description: De-associate author from article
      operationId: private_article_author_delete
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Article Author unique identifier
          in: path
          name: author_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete article author
      tags:
        - articles
      x-subcategory: Private Article Authors
  "/account/articles/{article_id}/categories":
    get:
      description: List article categories
      operationId: private_article_categories_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Category"
                type: array
          description: OK. Article categories
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List article categories
      tags:
        - articles
      x-subcategory: Private Article Categories
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Associate new categories with the article. This will add new categories to the list of already associated categories
      operationId: private_article_categories_add
      requestBody:
        $ref: "#/components/requestBodies/CategoriesCreator"
      responses:
        "205":
          description: Reset Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add article categories
      tags:
        - articles
      x-subcategory: Private Article Categories
    put:
      description: Associate new categories with the article. This will remove all already associated categories and add these new ones
      operationId: private_article_categories_replace
      requestBody:
        $ref: "#/components/requestBodies/CategoriesCreator"
      responses:
        "205":
          description: Reset Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Replace article categories
      tags:
        - articles
      x-subcategory: Private Article Categories
  "/account/articles/{article_id}/categories/{category_id}":
    delete:
      description: De-associate category from article
      operationId: private_article_category_delete
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Category unique identifier
          in: path
          name: category_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete article category
      tags:
        - articles
      x-subcategory: Private Article Categories
  "/account/articles/{article_id}/confidentiality":
    delete:
      description: Delete confidentiality settings. The confidentiality feature is now deprecated. This has been replaced by the new extended embargo functionality and all items that used to be confidential have now been migrated to items with a permanent embargo on files. All API endpoints related to this functionality will remain for backwards compatibility, but will now be attached to the new extended embargo workflows.
      operationId: private_article_confidentiality_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete article confidentiality
      tags:
        - articles
      x-subcategory: Private Article Confidentiality - DEPRECATED
    get:
      description: View confidentiality settings. The confidentiality feature is now deprecated. This has been replaced by the new extended embargo functionality and all items that used to be confidential have now been migrated to items with a permanent embargo on files. All API endpoints related to this functionality will remain for backwards compatibility, but will now be attached to the new extended embargo workflows.
      operationId: private_article_confidentiality_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleConfidentiality"
          description: OK. Article categories
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Article confidentiality details
      tags:
        - articles
      x-subcategory: Private Article Confidentiality - DEPRECATED
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      description: Update confidentiality settings. The confidentiality feature is now deprecated. This has been replaced by the new extended embargo functionality and all items that used to be confidential have now been migrated to items with a permanent embargo on files. All API endpoints related to this functionality will remain for backwards compatibility, but will now be attached to the new extended embargo workflows.
      operationId: private_article_confidentiality_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ConfidentialityCreator"
        required: true
      responses:
        "205":
          description: Reset Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update article confidentiality
      tags:
        - articles
      x-subcategory: Private Article Confidentiality - DEPRECATED
  "/account/articles/{article_id}/embargo":
    delete:
      description: Will lift the embargo for the specified article
      operationId: private_article_embargo_delete
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete Article Embargo
      tags:
        - articles
      x-subcategory: Private Article Embargo
    get:
      description: View a private article embargo details
      operationId: private_article_embargo_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleEmbargo"
          description: OK. Embargo for article
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Article Embargo Details
      tags:
        - articles
      x-subcategory: Private Article Embargo
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      description: "Note: setting an article under whole embargo does not imply that the article will be published when the embargo will expire. You must explicitly call the publish endpoint to enable this functionality."
      operationId: private_article_embargo_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticleEmbargoUpdater"
        description: Embargo description
        required: true
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of embargo
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update Article Embargo
      tags:
        - articles
      x-subcategory: Private Article Embargo
  "/account/articles/{article_id}/files":
    get:
      description: List private files
      operationId: private_article_files_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PrivateFile"
                type: array
          description: OK. Article files list
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List article files
      tags:
        - articles
      x-subcategory: Private Article Files
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Initiate a new file upload within the article. Either use the link property to point to an existing file that resides elsewhere and will not be uploaded to Figshare or use the other 3 parameters (md5, name, size).
      operationId: private_article_upload_initiate
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FileCreator"
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Created
          headers:
            Location:
              description: Location of new file
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity. Parameters missing or incorrect
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Initiate Upload
      tags:
        - articles
      x-subcategory: Private Article Files
  "/account/articles/{article_id}/files/{file_id}":
    delete:
      description: Complete file upload
      operationId: private_article_file_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: File Delete
      tags:
        - articles
      x-subcategory: Private Article Files
    get:
      description: View details of file for specified article
      operationId: private_article_file
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PrivateFile"
          description: OK. Article private file
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Single File
      tags:
        - articles
      x-subcategory: Private Article Files
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: File unique identifier
        in: path
        name: file_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Complete file upload
      operationId: private_article_upload_complete
      responses:
        "202":
          description: Accepted
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Complete Upload
      tags:
        - articles
      x-subcategory: Private Article Files
  "/account/articles/{article_id}/private_links":
    get:
      description: List private links
      operationId: private_article_private_link
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PrivateLink"
                type: array
          description: OK. Article private links
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List private links
      tags:
        - articles
      x-subcategory: Private Article Private Links
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Create new private link for this article
      operationId: private_article_private_link_create
      requestBody:
        $ref: "#/components/requestBodies/PrivateLinkCreator"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PrivateLinkResponse"
          description: Created
          headers:
            Location:
              description: Location of private link
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create private link
      tags:
        - articles
      x-subcategory: Private Article Private Links
  "/account/articles/{article_id}/private_links/{link_id}":
    delete:
      description: Disable/delete private link for this article
      operationId: private_article_private_link_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Disable private link
      tags:
        - articles
      x-subcategory: Private Article Private Links
    parameters:
      - description: Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: Private link token
        in: path
        name: link_id
        required: true
        schema:
          type: string
    put:
      description: Update existing private link for this article
      operationId: private_article_private_link_update
      requestBody:
        $ref: "#/components/requestBodies/PrivateLinkCreator"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of private link
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update private link
      tags:
        - articles
      x-subcategory: Private Article Private Links
  "/account/articles/{article_id}/publish":
    post:
      description: |-
        - If the whole article is under embargo, it will not be published immediately, but when the embargo expires or is lifted.
        - When an article is published, a new public version will be generated. Any further updates to the article will affect the private article data. In order to make these changes publicly visible, an explicit publish operation is needed.
      operationId: private_article_publish
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Created
          headers:
            Location:
              description: Location of newly published article
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Article Publish
      tags:
        - articles
  "/account/articles/{article_id}/reserve_doi":
    post:
      description: Reserve DOI for article
      operationId: private_article_reserve_doi
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleDOI"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Article Reserve DOI
      tags:
        - articles
  "/account/articles/{article_id}/reserve_handle":
    post:
      description: Reserve Handle for article
      operationId: private_article_reserve_handle
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleHandle"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Article Reserve Handle
      tags:
        - articles
  "/account/articles/{article_id}/resource":
    post:
      description: Edit article resource data.
      operationId: private_article_resource
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        $ref: "#/components/requestBodies/Resource"
      responses:
        "205":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Reset Content
          headers:
            Location:
              description: Location for account article details
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
      security:
        - OAuth2:
            - all
      summary: Private Article Resource
      tags:
        - articles
  "/account/articles/{article_id}/versions/{version_id}/":
    put:
      description: Updating an article version by passing body parameters; request can also be made with the PATCH method.
      operationId: article_version_update
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Article version identifier
          in: path
          name: version_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        $ref: "#/components/requestBodies/ArticleUpdate"
      responses:
        "205":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarningsUpdate"
          description: Reset Content
          headers:
            Location:
              description: Location of newly created article
              schema:
                format: link
                type: string
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update article version
      tags:
        - articles
      x-subcategory: Article version private updates
  "/account/articles/{article_id}/versions/{version_id}/update_thumb":
    put:
      description: For a given public article version update the article thumbnail by choosing one of the associated files
      operationId: article_version_update_thumb
      parameters:
        - description: Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Article version identifier
          in: path
          name: version_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FileId"
        description: File ID
        required: true
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location for article version details
              schema:
                format: link
                type: string
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
      security:
        - OAuth2:
            - all
      summary: Update article version thumbnail
      tags:
        - articles
      x-subcategory: Article version private updates
  /account/authors/search:
    post:
      description: Search for authors
      operationId: private_authors_search
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PrivateAuthorsSearch"
        description: Search Parameters
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Author"
                type: array
          description: OK. An array of authors
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Search Authors
      tags:
        - authors
  "/account/authors/{author_id}":
    get:
      description: View author details
      operationId: private_author_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AuthorComplete"
          description: OK. Article representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Author details
      tags:
        - authors
    parameters:
      - description: Author unique identifier
        in: path
        name: author_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
  /account/categories:
    get:
      description: List institution categories (including parent Categories)
      operationId: private_categories_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Category"
                type: array
          description: OK. An array of categories
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Categories
      tags:
        - institutions
  /account/collections:
    get:
      description: List private collections
      operationId: private_collections_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order. Default varies by endpoint/resource.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
              - shares
              - cites
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Collection"
                type: array
          description: OK. An array of collections
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Collections List
      tags:
        - collections
    post:
      description: Create a new Collection by sending collection information
      operationId: private_collection_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CollectionCreate"
        description: Collection description
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarnings"
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create collection
      tags:
        - collections
      x-subcategory: Private Collection
  /account/collections/search:
    post:
      description: Returns a list of private Collections
      operationId: private_collections_search
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PrivateCollectionSearch"
        description: Search Parameters
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Collection"
                type: array
          description: OK. An array of collections
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Collections Search
      tags:
        - collections
  "/account/collections/{collection_id}":
    delete:
      description: Delete n collection
      operationId: private_collection_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete collection
      tags:
        - collections
      x-subcategory: Private Collection
    get:
      description: View a collection
      operationId: private_collection_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CollectionCompletePrivate"
          description: OK. Collection representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Collection details
      tags:
        - collections
      x-subcategory: Private Collection
    parameters:
      - description: Collection Unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      description: Update collection details; request can also be made with the PATCH method.
      operationId: private_collection_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CollectionUpdate"
        description: Collection description
        required: true
      responses:
        "205":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarningsUpdate"
          description: Reset Content
          headers:
            Location:
              description: Location of collection
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update collection
      tags:
        - collections
      x-subcategory: Private Collection
  "/account/collections/{collection_id}/articles":
    get:
      description: List collection articles
      operationId: private_collection_articles_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. Articles List
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List collection articles
      tags:
        - collections
      x-subcategory: Private Collection Articles
    parameters:
      - description: Collection unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Associate new articles with the collection. This will add new articles to the list of already associated articles
      operationId: private_collection_articles_add
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticlesCreator"
        description: Articles list
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Reset Content
          headers:
            Location:
              description: Location of new articles
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add collection articles
      tags:
        - collections
      x-subcategory: Private Collection Articles
    put:
      description: Associate new articles with the collection. This will remove all already associated articles and add these new ones
      operationId: private_collection_articles_replace
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticlesCreator"
        description: Articles List
        required: true
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of list of articles
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Replace collection articles
      tags:
        - collections
      x-subcategory: Private Collection Articles
  "/account/collections/{collection_id}/articles/{article_id}":
    delete:
      description: De-associate article from collection
      operationId: private_collection_article_delete
      parameters:
        - description: Collection unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Collection article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete collection article
      tags:
        - collections
      x-subcategory: Private Collection Articles
  "/account/collections/{collection_id}/authors":
    get:
      description: List collection authors
      operationId: private_collection_authors_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Author"
                type: array
          description: OK. Embargo for article
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List collection authors
      tags:
        - collections
      x-subcategory: Private Collection Authors
    parameters:
      - description: Collection unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Associate new authors with the collection. This will add new authors to the list of already associated authors
      operationId: private_collection_authors_add
      requestBody:
        $ref: "#/components/requestBodies/AuthorsCreator2"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Reset Content
          headers:
            Location:
              description: Location of list of authors
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add collection authors
      tags:
        - collections
      x-subcategory: Private Collection Authors
    put:
      description: Associate new authors with the collection. This will remove all already associated authors and add these new ones
      operationId: private_collection_authors_replace
      requestBody:
        $ref: "#/components/requestBodies/AuthorsCreator2"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of list of authors
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Replace collection authors
      tags:
        - collections
      x-subcategory: Private Collection Authors
  "/account/collections/{collection_id}/authors/{author_id}":
    delete:
      description: Delete collection author
      operationId: private_collection_author_delete
      parameters:
        - description: Collection unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Collection Author unique identifier
          in: path
          name: author_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete collection author
      tags:
        - collections
      x-subcategory: Private Collection Authors
  "/account/collections/{collection_id}/categories":
    get:
      description: List collection categories
      operationId: private_collection_categories_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Category"
                type: array
          description: OK. Categories list
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List collection categories
      tags:
        - collections
      x-subcategory: Private Collection Categories
    parameters:
      - description: Collection unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Associate new categories with the collection. This will add new categories to the list of already associated categories
      operationId: private_collection_categories_add
      requestBody:
        $ref: "#/components/requestBodies/CategoriesCreator2"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Reset Content
          headers:
            Location:
              description: Location of list of categories
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add collection categories
      tags:
        - collections
      x-subcategory: Private Collection Categories
    put:
      description: Associate new categories with the collection. This will remove all already associated categories and add these new ones
      operationId: private_collection_categories_replace
      requestBody:
        $ref: "#/components/requestBodies/CategoriesCreator2"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of list of categories
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Replace collection categories
      tags:
        - collections
      x-subcategory: Private Collection Categories
  "/account/collections/{collection_id}/categories/{category_id}":
    delete:
      description: De-associate category from collection
      operationId: private_collection_category_delete
      parameters:
        - description: Collection unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Collection category unique identifier
          in: path
          name: category_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete collection category
      tags:
        - collections
      x-subcategory: Private Collection Categories
  "/account/collections/{collection_id}/private_links":
    get:
      description: List article private links
      operationId: private_collection_private_links_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PrivateLink"
                type: array
          description: OK. Collection private links
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List collection private links
      tags:
        - collections
      x-subcategory: Private Collection Private Links
    parameters:
      - description: Collection unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Create new private link
      operationId: private_collection_private_link_create
      requestBody:
        $ref: "#/components/requestBodies/CollectionPrivateLinkCreator"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PrivateLinkResponse"
          description: Created
          headers:
            Location:
              description: Location of private link
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create collection private link
      tags:
        - collections
      x-subcategory: Private Collection Private Links
  "/account/collections/{collection_id}/private_links/{link_id}":
    delete:
      description: Disable/delete private link for this collection
      operationId: private_collection_private_link_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Disable private link
      tags:
        - collections
      x-subcategory: Private Collection Private Links
    parameters:
      - description: Collection unique identifier
        in: path
        name: collection_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: Private link token
        in: path
        name: link_id
        required: true
        schema:
          type: string
    put:
      description: Update existing private link for this collection
      operationId: private_collection_private_link_update
      requestBody:
        $ref: "#/components/requestBodies/CollectionPrivateLinkCreator"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of new private link
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update collection private link
      tags:
        - collections
      x-subcategory: Private Collection Private Links
  "/account/collections/{collection_id}/publish":
    post:
      description: When a collection is published, a new public version will be generated. Any further updates to the collection will affect the private collection data. In order to make these changes publicly visible, an explicit publish operation is needed.
      operationId: private_collection_publish
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Created
          headers:
            Location:
              description: Location of collection
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Collection Publish
      tags:
        - collections
  "/account/collections/{collection_id}/reserve_doi":
    post:
      description: Reserve DOI for collection
      operationId: private_collection_reserve_doi
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CollectionDOI"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Collection Reserve DOI
      tags:
        - collections
  "/account/collections/{collection_id}/reserve_handle":
    post:
      description: Reserve Handle for collection
      operationId: private_collection_reserve_handle
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CollectionHandle"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Collection Reserve Handle
      tags:
        - collections
  "/account/collections/{collection_id}/resource":
    post:
      description: Edit collection resource data.
      operationId: private_collection_resource
      parameters:
        - description: Collection unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        $ref: "#/components/requestBodies/Resource"
      responses:
        "205":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Reset Content
          headers:
            Location:
              description: Location for account collection details
              schema:
                format: link
                type: string
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "422":
          description: Unprocessable Entity
      security:
        - OAuth2:
            - all
      summary: Private Collection Resource
      tags:
        - collections
  /account/funding/search:
    post:
      description: Search for fundings
      operationId: private_funding_search
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FundingSearch"
        description: Search Parameters
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/FundingInformation"
                type: array
          description: OK. An array of funding information
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Search Funding
      tags:
        - other
  /account/institution:
    get:
      description: Account institution details
      operationId: private_institution_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Institution"
          description: OK. An array of institutions
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institutions
      tags:
        - institutions
  /account/institution/accounts:
    get:
      description: Returns the accounts for which the account has administrative privileges (assigned and inherited).
      operationId: private_institution_accounts_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: Filter by active status
          in: query
          name: is_active
          required: false
          schema:
            format: int64
            maximum: 1
            minimum: 0
            type: integer
        - description: Filter by institution_user_id
          in: query
          name: institution_user_id
          required: false
          schema:
            type: string
        - description: Filter by email
          in: query
          name: email
          required: false
          schema:
            type: string
        - description: Retrieve accounts with an ID lower or equal to the specified value
          in: query
          name: id_lte
          required: false
          schema:
            format: int64
            minimum: 0
            type: integer
        - description: Retrieve accounts with an ID greater or equal to the specified value
          in: query
          name: id_gte
          required: false
          schema:
            format: int64
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ShortAccount"
                type: array
          description: OK. An array of Accounts
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution Accounts
      tags:
        - institutions
    post:
      description: Create a new Account by sending account information
      operationId: private_institution_accounts_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccountCreate"
        description: Account description
        required: true
      responses:
        "201":
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create new Institution Account
      tags:
        - institutions
  /account/institution/accounts/search:
    post:
      description: Returns the accounts for which the account has administrative privileges (assigned and inherited).
      operationId: private_institution_accounts_search
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/InstitutionAccountsSearch"
        description: Search Parameters
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ShortAccount"
                type: array
          description: OK. An array of Accounts
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution Accounts Search
      tags:
        - institutions
  "/account/institution/accounts/{account_id}":
    put:
      description: Update Institution Account
      operationId: private_institution_accounts_update
      parameters:
        - description: Account identifier the user is associated to
          in: path
          name: account_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccountUpdate"
        description: Account description
        required: true
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of newly created article
              schema:
                format: link
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update Institution Account
      tags:
        - institutions
  /account/institution/articles:
    get:
      description: Get Articles from own institution. User must be administrator of the institution
      operationId: private_institution_articles
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order. Default varies by endpoint/resource.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
              - shares
              - downloads
              - cites
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
        - description: Filter by article publishing date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: published_since
          required: false
          schema:
            type: string
        - description: Filter by article modified date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: modified_since
          required: false
          schema:
            type: string
        - description: only return collections with this status
          in: query
          name: status
          required: false
          schema:
            format: int64
            type: integer
        - description: only return collections with this resource_doi
          in: query
          name: resource_doi
          required: false
          schema:
            type: string
        - description: "Only return articles with the respective type. Mapping for item_type is: 1 - Figure, 2 - Media, 3 - Dataset, 5 - Poster, 6 - Journal contribution, 7 - Presentation, 8 - Thesis, 9 - Software, 11 - Online resource, 12 - Preprint, 13 - Book, 14 - Conference contribution, 15 - Chapter, 16 - Peer review, 17 - Educational resource, 18 - Report, 19 - Standard, 20 - Composition, 21 - Funding, 22 - Physical object, 23 - Data management plan, 24 - Workflow, 25 - Monograph, 26 - Performance, 27 - Event, 28 - Service, 29 - Model"
          in: query
          name: item_type
          required: false
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. An array of articles belonging to the institution
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Institution Articles
      tags:
        - institutions
  /account/institution/custom_fields:
    get:
      description: Returns the custom fields in the group the user belongs to, or the ones in the group specified, if the user has access.
      operationId: custom_fields_list
      parameters:
        - description: Group_id
          in: query
          name: group_id
          required: false
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ShortCustomField"
                type: array
          description: OK. An array of custom fields
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private account institution group custom fields
      tags:
        - institutions
  "/account/institution/custom_fields/{custom_field_id}/items/upload":
    post:
      description: Uploads a CSV containing values for a specific custom field of type <b>dropdown_large_list</b>. More details in the <a href="#custom_fields">Custom Fields section</a>
      operationId: custom_fields_upload
      parameters:
        - description: Custom field identifier
          in: path
          name: custom_field_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      requestBody:
        content:
          multipart/form-data:
            schema:
              properties:
                external_file:
                  description: CSV file to be uploaded
                  format: binary
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              schema:
                example:
                  code: 200
                  message: OK
                type: object
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "409":
          description: Conflict
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Custom fields values files upload
      tags:
        - institutions
  /account/institution/embargo_options:
    get:
      description: Account institution embargo options details
      operationId: private_institution_embargo_options_details
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupEmbargoOptions"
                type: array
          description: OK. An array of embargo options
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution embargo options
      tags:
        - institutions
  /account/institution/groups:
    get:
      description: Returns the groups for which the account has administrative privileges (assigned and inherited).
      operationId: private_institution_groups_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Group"
                type: array
          description: OK. An array of Groups
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution Groups
      tags:
        - institutions
  "/account/institution/groups/{group_id}/embargo_options":
    get:
      description: Account institution group embargo options details
      operationId: private_group_embargo_options_details
      parameters:
        - description: Group identifier
          in: path
          name: group_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupEmbargoOptions"
                type: array
          description: OK. An array of embargo options
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution Group Embargo Options
      tags:
        - institutions
  "/account/institution/review/{curation_id}":
    get:
      description: Retrieve a certain curation review by its ID
      operationId: account_institution_curation
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CurationDetail"
          description: OK. A curation review.
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Institution Curation Review
      tags:
        - institutions
    parameters:
      - description: ID of the curation
        in: path
        name: curation_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
  "/account/institution/review/{curation_id}/comments":
    get:
      description: Retrieve a certain curation review's comments.
      operationId: account_institution_curation_comments
      parameters:
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CurationComment"
          description: OK. A curation review's comments.
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Institution Curation Review Comments
      tags:
        - institutions
    parameters:
      - description: ID of the curation
        in: path
        name: curation_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Add a new comment to the review.
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CurationCommentCreate"
        description: The content/value of the comment.
        required: true
      responses:
        "200":
          description: OK.
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: POST Institution Curation Review Comment
      tags:
        - institutions
  /account/institution/reviews:
    get:
      description: Retrieve a list of curation reviews for this institution
      operationId: account_institution_curations
      parameters:
        - description: Filter by the group ID
          in: query
          name: group_id
          required: false
          schema:
            format: int64
            minimum: 0
            type: integer
        - description: Retrieve the reviews for this article
          in: query
          name: article_id
          required: false
          schema:
            format: int64
            minimum: 0
            type: integer
        - description: Filter by the status of the review
          in: query
          name: status
          required: false
          schema:
            enum:
              - pending
              - approved
              - rejected
              - closed
            type: string
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Curation"
          description: OK. A list of curation reviews.
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Institution Curation Reviews
      tags:
        - institutions
  /account/institution/roles:
    get:
      description: Returns the roles available for groups and the institution group.
      operationId: private_institution_roles_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Role"
                type: array
          description: OK. An array of Roles
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution Roles
      tags:
        - institutions
  "/account/institution/roles/{account_id}":
    get:
      description: List Institution Account Group Roles
      operationId: private_institution_account_group_roles
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccountGroupRoles"
          description: OK. Account Group Roles
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List Institution Account Group Roles
      tags:
        - institutions
    parameters:
      - description: Account identifier the user is associated to
        in: path
        name: account_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Add Institution Account Group Roles
      operationId: private_institution_account_group_roles_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AccountGroupRolesCreate"
        description: Account description
        required: true
      responses:
        "201":
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Add Institution Account Group Roles
      tags:
        - institutions
  "/account/institution/roles/{account_id}/{group_id}/{role_id}":
    delete:
      description: Delete Institution Account Group Role
      operationId: private_institution_account_group_role_delete
      parameters:
        - description: Account identifier for which to remove the role
          in: path
          name: account_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Group identifier for which to remove the role
          in: path
          name: group_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Role identifier
          in: path
          name: role_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete Institution Account Group Role
      tags:
        - institutions
  "/account/institution/users/{account_id}":
    get:
      description: Retrieve institution user information using the account_id
      operationId: private_account_institution_user
      parameters:
        - description: Account identifier the user is associated to
          in: path
          name: account_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/User"
          description: OK. User representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Institution User
      tags:
        - institutions
  /account/licenses:
    get:
      description: This is a private endpoint that requires OAuth. It will return a list with figshare public licenses AND licenses defined for account's institution.
      operationId: private_licenses_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/License"
                type: array
          description: OK. An array of personal licenses
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Account Licenses
      tags:
        - other
  /account/projects:
    get:
      description: List private projects
      operationId: private_projects_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
        - description: only return collections from this institution
          in: query
          name: storage
          required: false
          schema:
            enum:
              - group
              - individual
            type: string
        - description: 'Any combination of owner, collaborator, viewer separated by comma. Examples: "owner" or "owner,collaborator".'
          in: query
          name: roles
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProjectPrivate"
                type: array
          description: OK. An array of projects
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Projects
      tags:
        - projects
    post:
      description: Create a new project
      operationId: private_project_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectCreate"
        description: Project  description
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CreateProjectResponse"
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create project
      tags:
        - projects
      x-subcategory: Private Project
  /account/projects/search:
    post:
      description: Search inside the private projects
      operationId: private_projects_search
      requestBody:
        $ref: "#/components/requestBodies/ProjectsSearch"
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProjectPrivate"
                type: array
          description: OK. An array of projects
        "400":
          description: Bad Request
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Private Projects search
      tags:
        - projects
  "/account/projects/{project_id}":
    delete:
      description: |
        A project can be deleted only if: - it is not public - it does not have public articles.

        When an individual project is deleted, all the articles are moved to my data of each owner.

        When a group project is deleted, all the articles and files are deleted as well. Only project owner, group admin and above can delete a project.
      operationId: private_project_delete
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete project
      tags:
        - projects
      x-subcategory: Private Project
    get:
      description: View a private project
      operationId: private_project_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProjectCompletePrivate"
          description: OK. Project representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: View project details
      tags:
        - projects
      x-subcategory: Private Project
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      description: Updating an project by passing body parameters; request can also be made with the PATCH method.
      operationId: private_project_update
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectUpdate"
        description: Project description
        required: true
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location of project
              schema:
                format: link
                type: string
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update project
      tags:
        - projects
      x-subcategory: Private Project
  "/account/projects/{project_id}/articles":
    get:
      description: List project articles
      operationId: private_project_articles_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. List of articles
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List project articles
      tags:
        - projects
      x-subcategory: Private Project Articles
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: Page number. Used for pagination with page_size
        in: query
        name: page
        required: false
        schema:
          format: int64
          maximum: 5000
          minimum: 1
          type: integer
      - description: The number of results included on a page. Used for pagination with page
        in: query
        name: page_size
        required: false
        schema:
          default: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
      - description: Number of results included on a page. Used for pagination with query
        in: query
        name: limit
        required: false
        schema:
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
      - description: Where to start the listing(the offset of the first result). Used for pagination with limit
        in: query
        name: offset
        required: false
        schema:
          format: int64
          maximum: 5000
          minimum: 0
          type: integer
    post:
      description: Create a new Article and associate it with this project
      operationId: private_project_articles_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticleProjectCreate"
        description: Article description
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LocationWarnings"
          description: Created
          headers:
            Location:
              description: Location of article
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create project article
      tags:
        - projects
      x-subcategory: Private Project Articles
  "/account/projects/{project_id}/articles/{article_id}":
    delete:
      description: Delete project article
      operationId: private_project_article_delete
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete project article
      tags:
        - projects
      x-subcategory: Private Project Articles
    get:
      description: Project article details
      operationId: private_project_article_details
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProjectArticle"
          description: OK. Article representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Project article details
      tags:
        - projects
      x-subcategory: Private Project Articles
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: Project Article unique identifier
        in: path
        name: article_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
  "/account/projects/{project_id}/articles/{article_id}/files":
    get:
      description: List article files
      operationId: private_project_article_files
      parameters:
        - description: Project unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Project Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PrivateFile"
                type: array
          description: OK. List of files
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Project article list files
      tags:
        - projects
      x-subcategory: Private Project Articles
  "/account/projects/{project_id}/articles/{article_id}/files/{file_id}":
    get:
      description: Project article file details
      operationId: private_project_article_file
      parameters:
        - description: Project unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Project Article unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: File unique identifier
          in: path
          name: file_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PrivateFile"
          description: OK. File representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Project article file details
      tags:
        - projects
      x-subcategory: Private Project Articles
  "/account/projects/{project_id}/collaborators":
    get:
      description: List Project collaborators and invited users
      operationId: private_project_collaborators_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProjectCollaborator"
                type: array
          description: OK. List of Collaborators
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List project collaborators
      tags:
        - projects
      x-subcategory: Private Project Collaborators
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Invite users to collaborate on project or view the project
      operationId: private_project_collaborators_invite
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProjectCollaboratorInvite"
        description: viewer or collaborator role. User user_id or email of user
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseMessage"
          description: Created
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Invite project collaborators
      tags:
        - projects
      x-subcategory: Private Project Collaborators
  "/account/projects/{project_id}/collaborators/{user_id}":
    delete:
      description: Remove project collaborator
      operationId: private_project_collaborator__Delete
      parameters:
        - description: Project unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: User unique identifier
          in: path
          name: user_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Remove project collaborator
      tags:
        - projects
      x-subcategory: Private Project Collaborators
  "/account/projects/{project_id}/leave":
    post:
      description: "Please note: project's owner cannot leave the project."
      operationId: private_project_leave
      parameters:
        - description: Project unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "204":
          description: No Content
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Project Leave
      tags:
        - projects
      x-subcategory: Private Project Collaborators
  "/account/projects/{project_id}/notes":
    get:
      description: List project notes
      operationId: private_project_notes_list
      parameters:
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProjectNote"
                type: array
          description: OK. List of project notes
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: List project notes
      tags:
        - projects
      x-subcategory: Private Project Notes
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    post:
      description: Create a new project note
      operationId: private_project_notes_create
      requestBody:
        $ref: "#/components/requestBodies/ProjectNoteCreate"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Location"
          description: Created
          headers:
            Location:
              description: Location note
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Create project note
      tags:
        - projects
      x-subcategory: Private Project Notes
  "/account/projects/{project_id}/notes/{note_id}":
    delete:
      operationId: private_project_note_delete
      responses:
        "204":
          description: No Content
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Delete project note
      tags:
        - projects
      x-subcategory: Private Project Notes
    get:
      operationId: private_project_note
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProjectNotePrivate"
          description: OK. Note representation
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Project note details
      tags:
        - projects
      x-subcategory: Private Project Notes
    parameters:
      - description: Project unique identifier
        in: path
        name: project_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
      - description: Note unique identifier
        in: path
        name: note_id
        required: true
        schema:
          format: int64
          minimum: 1
          type: integer
    put:
      operationId: private_project_note_update
      requestBody:
        $ref: "#/components/requestBodies/ProjectNoteCreate"
      responses:
        "205":
          description: Reset Content
          headers:
            Location:
              description: Location note
              schema:
                format: url
                type: string
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Update project note
      tags:
        - projects
      x-subcategory: Private Project Notes
  "/account/projects/{project_id}/publish":
    post:
      description: Publish a project. Possible after all items inside it are public
      operationId: private_project_publish
      parameters:
        - description: Project unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseMessage"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Project Publish
      tags:
        - projects
  /articles:
    get:
      description: Returns a list of public articles
      operationId: articles_list
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order. Default varies by endpoint/resource.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
              - shares
              - downloads
              - cites
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
        - description: only return articles from this institution
          in: query
          name: institution
          required: false
          schema:
            format: int64
            type: integer
        - description: Filter by article publishing date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: published_since
          required: false
          schema:
            type: string
        - description: Filter by article modified date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: modified_since
          required: false
          schema:
            type: string
        - description: only return articles from this group
          in: query
          name: group
          required: false
          schema:
            format: int64
            type: integer
        - description: only return articles with this resource_doi
          in: query
          name: resource_doi
          required: false
          schema:
            type: string
        - description: "Only return articles with the respective type. Mapping for item_type is: 1 - Figure, 2 - Media, 3 - Dataset, 5 - Poster, 6 - Journal contribution, 7 - Presentation, 8 - Thesis, 9 - Software, 11 - Online resource, 12 - Preprint, 13 - Book, 14 - Conference contribution, 15 - Chapter, 16 - Peer review, 17 - Educational resource, 18 - Report, 19 - Standard, 20 - Composition, 21 - Funding, 22 - Physical object, 23 - Data management plan, 24 - Workflow, 25 - Monograph, 26 - Performance, 27 - Event, 28 - Service, 29 - Model"
          in: query
          name: item_type
          required: false
          schema:
            format: int64
            type: integer
        - description: only return articles with this doi
          in: query
          name: doi
          required: false
          schema:
            type: string
        - description: only return articles with this handle
          in: query
          name: handle
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. An array of articles
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Unprocessable Entity. Syntax is correct but one of the parameters isn't correctly processed
        "500":
          description: Internal Server Error
      security: []
      summary: Public Articles
      tags:
        - articles
  /articles/search:
    post:
      description: Returns a list of public articles, filtered by the search parameters
      operationId: articles_search
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ArticleSearch"
        description: Search Parameters
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ArticleWithProject"
                type: array
          description: OK. An array of articles
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Unprocessable Entity. Syntax is correct but one of the parameters isn't correctly processed
        "500":
          description: Internal Server Error
      security: []
      summary: Public Articles Search
      tags:
        - articles
  "/articles/{article_id}":
    get:
      description: View an article
      operationId: article_details
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleComplete"
          description: OK. Article representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: View article details
      tags:
        - articles
      x-subcategory: Public Article
  "/articles/{article_id}/files":
    get:
      description: Files list for article
      operationId: article_files
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/PublicFile"
                type: array
          description: OK. List of article files
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: List article files
      tags:
        - articles
      x-subcategory: Public Article files
  "/articles/{article_id}/files/{file_id}":
    get:
      description: File by id
      operationId: article_file_details
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: File Unique identifier
          in: path
          name: file_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/PublicFile"
          description: OK. File representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Article file details
      tags:
        - articles
      x-subcategory: Public Article files
  "/articles/{article_id}/versions":
    get:
      description: List public article versions
      operationId: article_versions
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ArticleVersions"
                type: array
          description: OK. Article version representations
        "400":
          description: Bad Request. Article ID must be an integer and bigger than 0.
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: List article versions
      tags:
        - articles
      x-subcategory: Public Article
  "/articles/{article_id}/versions/{v_number}":
    get:
      description: Article with specified version
      operationId: article_version_details
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Article Version Number
          in: path
          name: v_number
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleComplete"
          description: OK. Article representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Article details for version
      tags:
        - articles
      x-subcategory: Public Article
  "/articles/{article_id}/versions/{v_number}/confidentiality":
    get:
      description: Confidentiality for article version. The confidentiality feature is now deprecated. This has been replaced by the new extended embargo functionality and all items that used to be confidential have now been migrated to items with a permanent embargo on files. All API endpoints related to this functionality will remain for backwards compatibility, but will now be attached to the new extended embargo workflows.
      operationId: article_version_confidentiality
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Version Number
          in: path
          name: v_number
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleConfidentiality"
          description: OK. Confidentiality representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Public Article Confidentiality for article version
      tags:
        - articles
  "/articles/{article_id}/versions/{v_number}/embargo":
    get:
      description: Embargo for article version
      operationId: article_version_embargo
      parameters:
        - description: Article Unique identifier
          in: path
          name: article_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Version Number
          in: path
          name: v_number
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ArticleEmbargo"
          description: OK. Embargo representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Public Article Embargo for article version
      tags:
        - articles
  /categories:
    get:
      description: Returns a list of public categories
      operationId: categories_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Category"
                type: array
          description: OK. An array of categories
        "500":
          description: Internal Server Error
      security: []
      summary: Public Categories
      tags:
        - other
  /collections:
    get:
      description: Returns a list of public collections
      operationId: collections_list
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order. Default varies by endpoint/resource.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
              - shares
              - cites
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
        - description: only return collections from this institution
          in: query
          name: institution
          required: false
          schema:
            format: int64
            type: integer
        - description: Filter by collection publishing date. Will only return collections published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: published_since
          required: false
          schema:
            type: string
        - description: Filter by collection modified date. Will only return collections published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: modified_since
          required: false
          schema:
            type: string
        - description: only return collections from this group
          in: query
          name: group
          required: false
          schema:
            format: int64
            type: integer
        - description: only return collections with this resource_doi
          in: query
          name: resource_doi
          required: false
          schema:
            type: string
        - description: only return collections with this doi
          in: query
          name: doi
          required: false
          schema:
            type: string
        - description: only return collections with this handle
          in: query
          name: handle
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Collection"
                type: array
          description: OK. An array of collections
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Public Collections
      tags:
        - collections
  /collections/search:
    post:
      description: Returns a list of public collections
      operationId: collections_search
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CollectionSearch"
        description: Search Parameters
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Collection"
                type: array
          description: OK. An array of collections
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Public Collections Search
      tags:
        - collections
  "/collections/{collection_id}":
    get:
      description: View a collection
      operationId: collection_details
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CollectionComplete"
          description: OK. Collection representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Collection details
      tags:
        - collections
      x-subcategory: Public Collection
  "/collections/{collection_id}/articles":
    get:
      description: Returns a list of public collection articles
      operationId: collection_articles
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. An array of articles belonging to the collection
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Public Collection Articles
      tags:
        - collections
  "/collections/{collection_id}/versions":
    get:
      description: Returns a list of public collection Versions
      operationId: collection_versions
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/CollectionVersions"
                type: array
          description: OK. An array of versions
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Collection Versions list
      tags:
        - collections
      x-subcategory: Public Collection
  "/collections/{collection_id}/versions/{version_id}":
    get:
      description: View details for a certain version of a collection
      operationId: collection_version_details
      parameters:
        - description: Collection Unique identifier
          in: path
          name: collection_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
        - description: Version Number
          in: path
          name: version_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CollectionComplete"
          description: OK. Collection for that version
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Collection Version details
      tags:
        - collections
      x-subcategory: Public Collection
  "/file/download/{file_id}":
    get:
      description: Starts the download of a file
      operationId: file_download
      parameters:
        - in: path
          name: file_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          description: OK
        "500":
          description: Internal Server Error
      security: []
      summary: Public File Download
      tags:
        - other
  /institution/hrfeed/upload:
    post:
      description: More info in the <a href="#hr_feed">HR Feed section</a>
      operationId: institution_hrfeed_upload
      requestBody:
        content:
          multipart/form-data:
            schema:
              properties:
                hrfeed:
                  description: You can find an example in the Hr Feed section
                  format: binary
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResponseMessage"
          description: OK
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Private Institution HRfeed Upload
      tags:
        - institutions
  "/institutions/{institution_string_id}/articles/filter-by":
    get:
      description: Returns a list of articles belonging to the institution
      operationId: institution_articles
      parameters:
        - in: path
          name: institution_string_id
          required: true
          schema:
            type: string
        - in: query
          name: resource_id
          required: true
          schema:
            type: string
        - in: query
          name: filename
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. An array of articles
        "500":
          description: Internal Server Error
      summary: Public Licenses
      tags:
        - institutions
  /item_types:
    get:
      description: Returns the list of Item Types of the requested group. If no user is authenticated, returns the item types available for Figshare.
      operationId: item_types_list
      parameters:
        - description: Identifier of the group for which the item types are requested
          in: query
          name: group_id
          required: false
          schema:
            default: 0
            format: int64
            minimum: 0
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ItemType"
                type: array
          description: OK. An array of item types
        "400":
          description: Bad Request
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ErrorMessage"
          description: Forbidden
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security:
        - OAuth2:
            - all
      summary: Item Types
      tags:
        - other
  /licenses:
    get:
      description: Returns a list of public licenses
      operationId: licenses_list
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/License"
                type: array
          description: OK. An array of licenses
        "500":
          description: Internal Server Error
      security: []
      summary: Public Licenses
      tags:
        - other
  /projects:
    get:
      description: Returns a list of public projects
      operationId: projects_list
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
        - description: Page number. Used for pagination with page_size
          in: query
          name: page
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 1
            type: integer
        - description: The number of results included on a page. Used for pagination with page
          in: query
          name: page_size
          required: false
          schema:
            default: 10
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Number of results included on a page. Used for pagination with query
          in: query
          name: limit
          required: false
          schema:
            format: int64
            maximum: 1000
            minimum: 1
            type: integer
        - description: Where to start the listing(the offset of the first result). Used for pagination with limit
          in: query
          name: offset
          required: false
          schema:
            format: int64
            maximum: 5000
            minimum: 0
            type: integer
        - description: The field by which to order. Default varies by endpoint/resource.
          in: query
          name: order
          required: false
          schema:
            default: published_date
            enum:
              - published_date
              - modified_date
              - views
            type: string
        - in: query
          name: order_direction
          required: false
          schema:
            default: desc
            enum:
              - asc
              - desc
            type: string
        - description: only return collections from this institution
          in: query
          name: institution
          required: false
          schema:
            format: int64
            type: integer
        - description: Filter by article publishing date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          in: query
          name: published_since
          required: false
          schema:
            type: string
        - description: only return collections from this group
          in: query
          name: group
          required: false
          schema:
            format: int64
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Project"
                type: array
          description: OK. An array of projects
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Public Projects
      tags:
        - projects
  /projects/search:
    post:
      description: Returns a list of public articles
      operationId: projects_search
      parameters:
        - description: Unique hash used for bypassing the item retrieval limit of 9,000 entities. When using this parameter, please note that the offset parameter will not be available, but the limit parameter will still work as expected.
          in: header
          name: X-Cursor
          required: false
          schema:
            format: uuid
            type: string
      requestBody:
        $ref: "#/components/requestBodies/ProjectsSearch"
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Project"
                type: array
          description: OK. An array of projects
          headers:
            X-Cursor:
              description: Unique hash used for bypassing the item retrieval limit of 9,000 entities.
              schema:
                type: string
        "400":
          description: Bad Request
        "422":
          description: Bad Request
        "500":
          description: Internal Server Error
      security: []
      summary: Public Projects Search
      tags:
        - projects
  "/projects/{project_id}":
    get:
      description: View a project
      operationId: project_details
      parameters:
        - description: Project Unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProjectComplete"
          description: OK. Project representation
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Public Project
      tags:
        - projects
  "/projects/{project_id}/articles":
    get:
      description: List articles in project
      operationId: project_articles
      parameters:
        - description: Project Unique identifier
          in: path
          name: project_id
          required: true
          schema:
            format: int64
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/Article"
                type: array
          description: OK. Project articles list
        "400":
          description: Bad Request
        "404":
          description: Not Found
        "500":
          description: Internal Server Error
      security: []
      summary: Public Project Articles
      tags:
        - projects
components:
  requestBodies:
    ArticleUpdate:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ArticleUpdate"
      description: Article description
      required: true
    AuthorsCreator:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/AuthorsCreator"
      description: Authors description
      required: true
    AuthorsCreator2:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/AuthorsCreator"
      description: List of authors
      required: true
    CategoriesCreator:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CategoriesCreator"
      required: true
    CategoriesCreator2:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CategoriesCreator"
      description: Categories list
      required: true
    CollectionPrivateLinkCreator:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/CollectionPrivateLinkCreator"
    PrivateLinkCreator:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/PrivateLinkCreator"
    ProjectNoteCreate:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ProjectNoteCreate"
      description: Note message
      required: true
    ProjectsSearch:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/ProjectsSearch"
      description: Search Parameters
    Resource:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Resource"
      description: Resource data
      required: true
  schemas:
    Account:
      properties:
        active:
          description: Account activity status
          example: 0
          format: int64
          type: integer
        created_date:
          description: Date when account was created
          example: 2018-05-22T04:04:04
          type: string
        email:
          description: User email
          example: user@domain.com
          type: string
        first_name:
          description: First Name
          example: Doe
          type: string
        group_id:
          description: Account group id
          example: 0
          format: int64
          type: integer
        id:
          description: Account id
          example: 1495682
          format: int64
          type: integer
        institution_id:
          description: Account institution
          example: 1
          format: int64
          type: integer
        institution_user_id:
          description: Account institution user id
          example: djohn42
          type: string
        last_name:
          description: Last Name
          example: John
          type: string
        maximum_file_size:
          description: Maximum upload size for account
          example: 0
          format: int64
          type: integer
        modified_date:
          description: Date of last account modification
          example: 2018-05-22T04:04:04
          type: string
        pending_quota_request:
          description: True if a quota request is pending
          example: true
          type: boolean
        quota:
          description: Account quota
          example: 0
          format: int64
          type: integer
        used_quota:
          description: Account total used quota
          example: 0
          format: int64
          type: integer
        used_quota_private:
          description: Account used private quota
          example: 0
          format: int64
          type: integer
        used_quota_public:
          description: Account public used quota
          example: 0
          format: int64
          type: integer
      required:
        - id
        - first_name
        - last_name
        - used_quota_private
        - modified_date
        - used_quota
        - created_date
        - quota
        - group_id
        - institution_user_id
        - institution_id
        - email
        - used_quota_public
        - pending_quota_request
        - active
        - maximum_file_size
      type: object
      x-tag: other
    AccountCreate:
      properties:
        email:
          description: Email of account
          example: johndoe@example.com
          maxLength: 150
          minLength: 3
          type: string
        first_name:
          default: ""
          description: First Name
          example: John
          maxLength: 30
          type: string
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        institution_user_id:
          default: ""
          description: Institution user id
          example: johndoe
          maxLength: 50
          type: string
        is_active:
          description: Is account active
          type: boolean
        last_name:
          default: ""
          description: Last Name
          example: Doe
          maxLength: 30
          type: string
        quota:
          description: Account quota
          example: 1000
          format: int64
          type: integer
        symplectic_user_id:
          default: ""
          description: Symplectic user id
          example: johndoe
          maxLength: 50
          type: string
      required:
        - email
        - first_name
      type: object
      x-tag: institutions
    AccountGroupRoles:
      example:
        "2":
          - category: group
            id: 7
            name: User
      properties: {}
      type: object
      x-tag: institutions
    AccountGroupRolesCreate:
      example:
        "2":
          - 2
          - 7
        "3":
          - 7
          - 9
      properties: {}
      type: object
      x-tag: institutions
    AccountReport:
      properties:
        account_id:
          description: The ID of the account which generated this report.
          format: int64
          type: integer
        created_date:
          description: Date when the AccountReport was requested
          example: 2017-05-15T15:12:26Z
          type: string
        download_url:
          description: The download link for the generated XLSX
          example: https://some.com/storage/path/123/report-456.xlsx
          format: url
          type: string
        group_id:
          description: The group ID that was used to filter the report, if any.
          format: int64
          type: integer
        id:
          description: A unique ID for the AccountRecord
          format: int64
          type: integer
        status:
          description: Status of the report
          enum:
            - missing
            - pending
            - done
          type: string
      required:
        - id
        - account_id
        - created_date
        - status
        - download_url
        - group_id
      type: object
    AccountUpdate:
      properties:
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        is_active:
          description: Is account active
          type: boolean
      required:
        - group_id
        - is_active
      type: object
      x-tag: institutions
    Article:
      properties:
        defined_type:
          description: Type of article identifier
          example: 3
          format: int64
          type: integer
        defined_type_name:
          description: Name of the article type identifier
          example: media
          type: string
        doi:
          description: DOI
          example: 10.6084/m9.figshare.1434614
          type: string
        group_id:
          description: Group ID
          example: 1234
          nullable: true
          type: number
        handle:
          description: Handle
          example: 111184/figshare.1234
          type: string
        id:
          description: Unique identifier for article
          example: 1434614
          format: int64
          type: integer
        published_date:
          description: Posted date
          example: 2015-12-31T23:59:59.000Z
          nullable: true
          type: string
        thumb:
          description: Thumbnail image
          example: https://ndownloader.figshare.com/files/123456789/preview/12345678/thumb.png
          format: url
          type: string
        timeline:
          $ref: "#/components/schemas/Timeline"
        title:
          description: Title of article
          example: Test article title
          type: string
        url:
          description: Api endpoint for article
          example: http://api.figshare.com/articles/1434614
          format: url
          type: string
        url_private_api:
          description: Private Api endpoint for article
          example: https://api.figshare.com/account/articles/1434614
          format: url
          type: string
        url_private_html:
          description: Private site endpoint for article
          example: https://figshare.com/account/articles/1434614
          format: url
          type: string
        url_public_api:
          description: Public Api endpoint for article
          example: https://api.figshare.com/articles/1434614
          format: url
          type: string
        url_public_html:
          description: Public site endpoint for article
          example: https://figshare.com/articles/media/Test_article_title/1434614
          format: url
          type: string
      required:
        - id
        - title
        - doi
        - handle
        - group_id
        - url
        - url_public_html
        - url_public_api
        - url_private_html
        - url_private_api
        - published_date
        - timeline
        - thumb
        - defined_type
        - defined_type_name
      type: object
      x-tag: articles
    ArticleComplete:
      allOf:
        - $ref: "#/components/schemas/ProjectArticle"
      properties:
        authors:
          description: List of article authors
          items:
            $ref: "#/components/schemas/Author"
          type: array
        custom_fields:
          description: List of custom fields values
          items:
            $ref: "#/components/schemas/CustomArticleField"
          type: array
        embargo_options:
          description: List of embargo options
          items:
            $ref: "#/components/schemas/GroupEmbargoOptions"
          type: array
        figshare_url:
          description: Article public url
          example: http://figshare.com/articles/media/article_name/2000005
          format: url
          type: string
        files:
          description: List of article files
          items:
            $ref: "#/components/schemas/PublicFile"
          type: array
        resource_doi:
          description: Article DOI
          example: 10.5072/FK2.developmentfigshare.2000005
          nullable: true
          type: string
        resource_title:
          description: Article resource title
          example: first article
          nullable: true
          type: string
      required:
        - figshare_url
        - resource_title
        - resource_doi
        - files
        - authors
        - custom_fields
        - embargo_options
        - citation
        - confidential_reason
        - embargo_type
        - is_confidential
        - size
        - funding
        - funding_list
        - tags
        - version
        - is_active
        - is_metadata_record
        - metadata_reason
        - status
        - description
        - is_embargoed
        - embargo_date
        - is_public
        - modified_date
        - created_date
        - has_linked_file
        - categories
        - license
        - embargo_title
        - embargo_reason
        - references
        - id
        - title
        - doi
        - handle
        - group_id
        - url
        - url_public_html
        - url_public_api
        - url_private_html
        - url_private_api
        - published_date
        - timeline
        - thumb
        - defined_type
        - defined_type_name
      type: object
      x-tag: articles
    ArticleCompletePrivate:
      allOf:
        - $ref: "#/components/schemas/ArticleComplete"
      properties:
        account_id:
          description: ID of the account owning the article
          example: 1000001
          format: int64
          type: integer
        group_resource_id:
          description: Group resource id
          example: null
          nullable: true
          type: string
      required:
        - group_resource_id
        - account_id
        - figshare_url
        - resource_title
        - resource_doi
        - files
        - authors
        - custom_fields
        - embargo_options
        - citation
        - confidential_reason
        - embargo_type
        - is_confidential
        - size
        - funding
        - funding_list
        - array[integer](optional)
        - tags
        - version
        - is_active
        - is_metadata_record
        - metadata_reason
        - status
        - description
        - is_embargoed
        - embargo_date
        - is_public
        - modified_date
        - created_date
        - has_linked_file
        - categories
        - license
        - embargo_title
        - embargo_reason
        - references
        - id
        - title
        - doi
        - handle
        - group_id
        - url
        - url_public_html
        - url_public_api
        - url_private_html
        - url_private_api
        - published_date
        - timeline
        - thumb
        - defined_type
        - defined_type_name
      type: object
      x-tag: articles
    ArticleConfidentiality:
      properties:
        is_confidential:
          description: True if article is confidential
          example: true
          type: boolean
        reason:
          description: Reason for confidentiality
          example: need to
          type: string
      required:
        - is_confidential
        - reason
      type: object
      x-tag: articles
    ArticleCreate:
      properties:
        authors:
          default: []
          description: "List of authors to be associated with the article. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - name: John Doe
            - id: 1000008
          items:
            type: object
          type: array
        categories:
          default: []
          description: List of category ids to be associated with the article(e.g [1, 23, 33, 66])
          example:
            - 1
            - 10
            - 11
          items:
            format: int64
            type: integer
          type: array
        categories_by_source_id:
          default: []
          description: List of category source ids to be associated with the article, supersedes the categories property
          example:
            - "300204"
            - "400207"
          items:
            type: string
          type: array
        custom_fields:
          description: List of key, values pairs to be associated with the article
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        defined_type:
          description: <b>One of:</b> <code>figure</code> <code>online resource</code> <code>preprint</code> <code>book</code> <code>conference contribution</code> <code>media</code> <code>dataset</code> <code>poster</code> <code>journal contribution</code> <code>presentation</code> <code>thesis</code> <code>software</code>
          example: media
          type: string
        description:
          default: ""
          description: The article description. In a publisher case, usually this is the remote article description
          example: Test description of article
          maxLength: 10000
          type: string
        doi:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting DOIs. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        funding:
          default: ""
          description: Grant number or funding authority
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        handle:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting Handles. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        is_metadata_record:
          description: True if article has no files
          example: true
          type: boolean
        keywords:
          default: []
          description: List of tags to be associated with the article. Tags can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        license:
          default: 0
          description: License id for this article.
          example: 1
          format: int64
          type: integer
        metadata_reason:
          description: Article metadata reason
          example: hosted somewhere else
          type: string
        references:
          default: []
          description: List of links to be associated with the article (e.g ["http://link1", "http://link2", "http://link3"])
          example:
            - http://figshare.com
            - http://api.figshare.com
          items:
            format: link
            type: string
          type: array
        resource_doi:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article DOI.
          type: string
        resource_title:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article title.
          type: string
        tags:
          default: []
          description: List of tags to be associated with the article. Keywords can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/TimelineUpdate"
        title:
          description: Title of article
          example: Test article title
          maxLength: 1000
          minLength: 3
          type: string
      required:
        - title
      type: object
      x-tag: articles
    ArticleDOI:
      properties:
        doi:
          description: Reserved DOI
          example: 10.5072/FK2.FIGSHARE.20345
          type: string
      required:
        - doi
      type: object
      x-tag: articles
    ArticleEmbargo:
      properties:
        embargo_date:
          description: Date when embargo lifts
          example: 2018-05-22T04:04:04
          nullable: true
          type: string
        embargo_options:
          description: List of embargo permissions that are associated with the article. If the type is logged_in and the group_ids list is empty, then the whole institution can see the article; if there are multiple group_ids, then only users that are under those groups can see the article.
          example:
            - group_ids: []
              id: 13
              ip_name: bacau
              type: ip_range
            - group_ids:
                - 550
                - 9448
              id: 12
              ip_name: ""
              type: logged_in
          items:
            type: object
          type: array
        embargo_reason:
          description: Reason for embargo
          example: ""
          type: string
        embargo_title:
          description: Title for embargo
          example: File(s) under embargo
          type: string
        embargo_type:
          description: Embargo type
          example: ""
          nullable: true
          type: string
        is_embargoed:
          description: True if embargoed
          example: true
          type: boolean
      required:
        - is_embargoed
        - embargo_date
        - embargo_type
        - embargo_title
        - embargo_reason
        - embargo_options
      type: object
      x-tag: articles
    ArticleEmbargoUpdater:
      properties:
        embargo_date:
          description: Date when the embargo expires and the article gets published, '0' value will set up permanent embargo
          example: 2018-05-22T04:04:04
          type: string
        embargo_options:
          description: List of embargo permissions to be associated with the article. The list must contain `id` and can also contain `group_ids`(a field that only applies to 'logged_in' permissions). The new list replaces old options in the database, and an empty list removes all permissions for this article. Administration permission has to be set up alone but logged in and IP range permissions can be set up together.
          example:
            - id: 1321
            - id: 3345
            - group_ids:
                - 4332
                - 5433
                - 678
              id: 54621
          items:
            type: object
          type: array
        embargo_reason:
          description: Reason for setting embargo
          example: ""
          type: string
        embargo_title:
          description: Title for embargo
          example: File(s) under embargo
          type: string
        embargo_type:
          description: "Embargo can be enabled at the article or the file level. Possible values: article, file"
          enum:
            - article
            - file
          example: file
          type: string
        is_embargoed:
          description: Embargo status
          example: true
          type: boolean
      required:
        - is_embargoed
        - embargo_type
        - embargo_date
      type: object
      x-tag: articles
    ArticleHandle:
      properties:
        handle:
          description: Reserved Handle
          example: 11172/FK2.FIGSHARE.20345
          type: string
      required:
        - handle
      type: object
      x-tag: articles
    ArticleProjectCreate:
      properties:
        authors:
          default: []
          description: "List of authors to be associated with the article. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - name: John Doe
            - id: 1000008
          items:
            type: object
          type: array
        categories:
          default: []
          description: List of category ids to be associated with the article(e.g [1, 23, 33, 66])
          example:
            - 1
            - 10
            - 11
          items:
            format: int64
            type: integer
          type: array
        categories_by_source_id:
          default: []
          description: List of category source ids to be associated with the article, supersedes the categories property
          example:
            - "300204"
            - "400207"
          items:
            type: string
          type: array
        custom_fields:
          description: List of key, values pairs to be associated with the article
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        defined_type:
          description: <b>One of:</b> <code>figure</code> <code>online resource</code> <code>preprint</code> <code>book</code> <code>conference contribution</code> <code>media</code> <code>dataset</code> <code>poster</code> <code>journal contribution</code> <code>presentation</code> <code>thesis</code> <code>software</code>
          example: media
          type: string
        description:
          default: ""
          description: The article description. In a publisher case, usually this is the remote article description
          example: Test description of article
          maxLength: 10000
          type: string
        doi:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting DOIs. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        funding:
          default: ""
          description: Grant number or funding authority
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        handle:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting Handles. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        keywords:
          default: []
          description: List of tags to be associated with the article. Tags can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        license:
          default: 0
          description: License id for this article.
          example: 1
          format: int64
          type: integer
        references:
          default: []
          description: List of links to be associated with the article (e.g ["http://link1", "http://link2", "http://link3"])
          example:
            - http://figshare.com
            - http://api.figshare.com
          items:
            format: link
            type: string
          type: array
        resource_doi:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article DOI.
          type: string
        resource_title:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article title.
          type: string
        tags:
          default: []
          description: List of tags to be associated with the article. Keywords can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/TimelineUpdate"
        title:
          description: Title of article
          example: Test article title
          maxLength: 1000
          minLength: 3
          type: string
      required:
        - title
      type: object
      x-tag: articles
    ArticleSearch:
      allOf:
        - $ref: "#/components/schemas/CommonSearch"
      properties:
        doi:
          description: Only return articles with this doi
          example: 10.6084/m9.figshare.1407024
          type: string
        handle:
          description: Only return articles with this handle
          example: 111084/m9.figshare.14074
          type: string
        item_type:
          description: "Only return articles with the respective type. Mapping for item_type is: 1 - Figure, 2 - Media, 3 - Dataset, 5 - Poster, 6 - Journal contribution, 7 - Presentation, 8 - Thesis, 9 - Software, 11 - Online resource, 12 - Preprint, 13 - Book, 14 - Conference contribution, 15 - Chapter, 16 - Peer review, 17 - Educational resource, 18 - Report, 19 - Standard, 20 - Composition, 21 - Funding, 22 - Physical object, 23 - Data management plan, 24 - Workflow, 25 - Monograph, 26 - Performance, 27 - Event, 28 - Service, 29 - Model"
          example: 1
          format: int64
          type: integer
        order:
          default: created_date
          description: The field by which to order
          enum:
            - published_date
            - modified_date
            - views
            - shares
            - downloads
            - cites
          example: published_date
          type: string
        project_id:
          description: Only return articles in this project
          example: 1
          format: int64
          type: integer
        resource_doi:
          description: Only return articles with this resource_doi
          example: 10.6084/m9.figshare.1407024
          type: string
      type: object
      x-tag: articles
    ArticleUpdate:
      properties:
        authors:
          default: []
          description: "List of authors to be associated with the article. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - name: John Doe
            - id: 1000008
          items:
            type: object
          type: array
        categories:
          default: []
          description: List of category ids to be associated with the article(e.g [1, 23, 33, 66])
          example:
            - 1
            - 10
            - 11
          items:
            format: int64
            type: integer
          type: array
        categories_by_source_id:
          default: []
          description: List of category source ids to be associated with the article, supersedes the categories property
          example:
            - "300204"
            - "400207"
          items:
            type: string
          type: array
        custom_fields:
          description: List of key, values pairs to be associated with the article
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        defined_type:
          description: <b>One of:</b> <code>figure</code> <code>online resource</code> <code>preprint</code> <code>book</code> <code>conference contribution</code> <code>media</code> <code>dataset</code> <code>poster</code> <code>journal contribution</code> <code>presentation</code> <code>thesis</code> <code>software</code>
          example: media
          type: string
        description:
          default: ""
          description: The article description. In a publisher case, usually this is the remote article description
          example: Test description of article
          maxLength: 10000
          type: string
        doi:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting DOIs. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        funding:
          default: ""
          description: Grant number or funding authority
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        handle:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting Handles. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        is_metadata_record:
          description: True if article has no files
          example: true
          type: boolean
        keywords:
          default: []
          description: List of tags to be associated with the article. Tags can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        license:
          default: 0
          description: License id for this article.
          example: 1
          format: int64
          type: integer
        metadata_reason:
          description: Article metadata reason
          example: hosted somewhere else
          type: string
        references:
          default: []
          description: List of links to be associated with the article (e.g ["http://link1", "http://link2", "http://link3"])
          example:
            - http://figshare.com
            - http://api.figshare.com
          items:
            format: link
            type: string
          type: array
        resource_doi:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article DOI.
          type: string
        resource_title:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article title.
          type: string
        tags:
          default: []
          description: List of tags to be associated with the article. Keywords can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/TimelineUpdate"
        title:
          description: Title of article
          example: Test article title
          maxLength: 1000
          minLength: 3
          type: string
      type: object
      x-tag: articles
    ArticleVersions:
      properties:
        url:
          description: Api endpoint for the item version
          example: https://api.figshare.com/v2/articles/2000005/versions/1
          format: url
          type: string
        version:
          description: Version number
          example: 1
          format: int64
          type: integer
      required:
        - version
        - url
      type: object
      x-tag: articles
    ArticleWithProject:
      allOf:
        - $ref: "#/components/schemas/Article"
      properties:
        project_id:
          default: 0
          description: Project id for this article.
          example: 1
          format: int64
          type: integer
      required:
        - project_id
        - id
        - title
        - doi
        - handle
        - group_id
        - url
        - url_public_html
        - url_public_api
        - url_private_html
        - url_private_api
        - published_date
        - timeline
        - thumb
        - defined_type
        - defined_type_name
      type: object
      x-tag: articles_with_project
    ArticlesCreator:
      properties:
        articles:
          description: List of article ids
          example:
            - 2000003
            - 2000004
          items:
            description: Id of article
            format: int64
            type: integer
          type: array
      required:
        - articles
      type: object
      x-tag: articles
    Author:
      properties:
        full_name:
          description: Author full name
          example: John Doe
          type: string
        id:
          description: Author id
          example: 97657
          format: int64
          type: integer
        is_active:
          description: True if author has published items
          example: 1
          type: boolean
        orcid_id:
          description: Author Orcid
          example: 1234-5678-9123-1234
          type: string
        url_name:
          description: Author url name
          example: John_Doe
          type: string
      required:
        - id
        - full_name
        - is_active
        - url_name
        - orcid_id
      type: object
      x-tag: authors
    AuthorComplete:
      allOf:
        - $ref: "#/components/schemas/Author"
      properties:
        first_name:
          description: First Name
          type: string
        group_id:
          description: Group id
          format: int64
          type: integer
        institution_id:
          description: Institution id
          format: int64
          type: integer
        is_public:
          description: if 1 then the author has published items
          format: int64
          type: integer
        job_title:
          description: Job title
          type: string
        last_name:
          description: Last Name
          type: string
      required:
        - institution_id
        - group_id
        - first_name
        - last_name
        - is_public
        - job_title
        - id
        - full_name
        - url_name
        - orcid_id
        - is_active
      type: object
      x-tag: authors
    AuthorsCreator:
      properties:
        authors:
          description: "List of authors to be associated with the article. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - id: 12121
            - id: 34345
            - name: John Doe
          items:
            type: object
          type: array
      required:
        - authors
      type: object
      x-tag: articles
    CategoriesCreator:
      properties:
        categories:
          description: List of category ids
          example:
            - 1
            - 10
            - 11
          items:
            description: Id of category
            format: int64
            type: integer
          type: array
      required:
        - categories
      type: object
      x-tag: articles
    Category:
      properties:
        id:
          description: Category id
          example: 11
          format: int64
          type: integer
        parent_id:
          description: Parent category
          example: 1
          format: int64
          type: integer
        path:
          description: Path to all ancestor ids
          example: /450/1024/6532
          type: string
        source_id:
          description: ID in original standard taxonomy
          example: "300204"
          type: string
        taxonomy_id:
          description: Internal id of taxonomy the category is part of
          example: 4
          format: int64
          type: integer
        title:
          description: Category title
          example: Anatomy
          type: string
      required:
        - parent_id
        - id
        - title
        - path
        - source_id
        - taxonomy_id
      type: object
      x-tag: common
    Collaborator:
      properties:
        name:
          description: Collaborator name
          example: name
          type: string
        role_name:
          description: Collaborator role
          example: Owner
          type: string
        user_id:
          description: Collaborator id
          example: 1
          type: integer
      required:
        - role_name
        - user_id
        - name
      type: object
      x-tag: projects
    Collection:
      properties:
        doi:
          description: Collection DOI
          example: 10.6084/m9.figshare.123
          type: string
        handle:
          description: Collection Handle
          example: 111184/figshare.1234
          type: string
        id:
          description: Collection id
          example: 123
          format: int64
          type: integer
        published_date:
          description: "Date when collection was published "
          example: 2015-08-12T00:39:55
          nullable: true
          type: string
        timeline:
          $ref: "#/components/schemas/Timeline"
        title:
          description: Collection title
          example: Sample collection
          type: string
        url:
          description: Api endpoint
          example: https://api.figshare.com/v2/collections/123
          type: string
      required:
        - id
        - title
        - doi
        - handle
        - url
        - timeline
        - published_date
      type: object
      x-tag: collections
    CollectionComplete:
      allOf:
        - $ref: "#/components/schemas/Collection"
      properties:
        articles_count:
          description: Number of articles in collection
          example: 1
          format: int64
          type: integer
        authors:
          description: List of collection authors
          items:
            $ref: "#/components/schemas/Author"
          type: array
        categories:
          description: List of collection categories
          items:
            $ref: "#/components/schemas/Category"
          type: array
        citation:
          description: Collection citation
          example: citation
          type: string
        created_date:
          description: Date when collection was created
          example: 2017-05-15T15:12:26Z
          type: string
        custom_fields:
          description: Collection custom fields
          items:
            $ref: "#/components/schemas/CustomArticleField"
          type: array
        description:
          description: Collection description
          example: description
          type: string
        funding:
          description: Full Collection funding information
          items:
            $ref: "#/components/schemas/FundingInformation"
          type: array
        group_id:
          description: Collection group
          example: 1
          format: int64
          type: integer
        group_resource_id:
          description: Collection group resource id
          example: 1
          nullable: true
          type: string
        institution_id:
          description: Collection institution
          example: 1
          format: int64
          type: integer
        modified_date:
          description: Date when collection was last modified
          example: 2017-05-15T15:12:26Z
          type: string
        public:
          description: True if collection is published
          example: true
          type: boolean
        references:
          description: List of collection references
          items:
            format: url
            type: string
          type: array
        resource_doi:
          description: Collection resource doi
          example: 10.6084/m9.figshare.123
          type: string
        resource_id:
          description: Collection resource id
          example: ""
          type: string
        resource_link:
          description: Collection resource link
          example: http://figshare.com
          type: string
        resource_title:
          description: Collection resource title
          example: test
          type: string
        resource_version:
          description: Collection resource version
          example: 0
          format: int64
          type: integer
        tags:
          description: List of collection tags
          example:
            - t1
            - t2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/Timeline"
        version:
          description: Collection version
          example: 1
          format: int64
          type: integer
      required:
        - funding
        - resource_id
        - resource_doi
        - resource_title
        - resource_link
        - resource_version
        - version
        - description
        - categories
        - references
        - tags
        - authors
        - institution_id
        - group_id
        - articles_count
        - public
        - citation
        - group_resource_id
        - custom_fields
        - modified_date
        - created_date
        - timeline
        - id
        - title
        - doi
        - handle
        - url
        - published_date
      type: object
      x-tag: collections
    CollectionCompletePrivate:
      allOf:
        - $ref: "#/components/schemas/Collection"
      properties:
        account_id:
          description: ID of the account owning the collection
          example: 1000001
          format: int64
          type: integer
        articles_count:
          description: Number of articles in collection
          example: 1
          format: int64
          type: integer
        authors:
          description: List of collection authors
          items:
            $ref: "#/components/schemas/Author"
          type: array
        categories:
          description: List of collection categories
          items:
            $ref: "#/components/schemas/Category"
          type: array
        citation:
          description: Collection citation
          example: citation
          type: string
        created_date:
          description: Date when collection was created
          example: 2017-05-15T15:12:26Z
          type: string
        custom_fields:
          description: Collection custom fields
          items:
            $ref: "#/components/schemas/CustomArticleField"
          type: array
        description:
          description: Collection description
          example: description
          type: string
        funding:
          description: Full Collection funding information
          items:
            $ref: "#/components/schemas/FundingInformation"
          type: array
        group_id:
          description: Collection group
          example: 1
          format: int64
          type: integer
        group_resource_id:
          description: Collection group resource id
          example: 1
          nullable: true
          type: string
        institution_id:
          description: Collection institution
          example: 1
          format: int64
          type: integer
        modified_date:
          description: Date when collection was last modified
          example: 2017-05-15T15:12:26Z
          type: string
        public:
          description: True if collection is published
          example: true
          type: boolean
        references:
          description: List of collection references
          items:
            format: url
            type: string
          type: array
        resource_doi:
          description: Collection resource doi
          example: 10.6084/m9.figshare.123
          type: string
        resource_id:
          description: Collection resource id
          example: ""
          type: string
        resource_link:
          description: Collection resource link
          example: http://figshare.com
          type: string
        resource_title:
          description: Collection resource title
          example: test
          type: string
        resource_version:
          description: Collection resource version
          example: 0
          format: int64
          type: integer
        tags:
          description: List of collection tags
          example:
            - t1
            - t2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/Timeline"
        version:
          description: Collection version
          example: 1
          format: int64
          type: integer
      required:
        - account_id
        - funding
        - resource_id
        - resource_doi
        - resource_title
        - resource_link
        - resource_version
        - version
        - description
        - categories
        - references
        - tags
        - authors
        - institution_id
        - group_id
        - articles_count
        - public
        - citation
        - group_resource_id
        - custom_fields
        - modified_date
        - created_date
        - timeline
        - id
        - title
        - doi
        - handle
        - url
        - published_date
      type: object
      x-tag: collections
    CollectionCreate:
      properties:
        articles:
          description: List of articles to be associated with the collection
          example:
            - 2000001
            - 2000005
          items:
            type: integer
          type: array
        authors:
          default: []
          description: "List of authors to be associated with the collection. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - name: John Doe
            - id: 20005
          items:
            type: object
          type: array
        categories:
          default: []
          description: List of category ids to be associated with the collection(e.g [1, 23, 33, 66])
          example:
            - 1
            - 10
            - 11
          items:
            format: int64
            type: integer
          type: array
        categories_by_source_id:
          default: []
          description: List of category source ids to be associated with the collection, supersedes the categories property
          example:
            - "300204"
            - "400207"
          items:
            type: string
          type: array
        custom_fields:
          description: List of key, values pairs to be associated with the collection
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        description:
          default: ""
          description: The collection description. In a publisher case, usually this is the remote collection description
          example: Test description of article
          maxLength: 10000
          type: string
        doi:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting DOIs. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        funding:
          default: ""
          description: Grant number or funding authority
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        handle:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting Handles. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        keywords:
          default: []
          description: List of tags to be associated with the collection. Tags can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        references:
          default: []
          description: List of links to be associated with the collection (e.g ["http://link1", "http://link2", "http://link3"])
          example:
            - http://figshare.com
            - http://api.figshare.com
          items:
            format: link
            type: string
          type: array
        resource_doi:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article DOI.
          type: string
        resource_id:
          description: Not applicable to regular users. In a publisher case, this is the publisher article id
          type: string
        resource_link:
          description: Not applicable to regular users. In a publisher case, this is the publisher article link
          type: string
        resource_title:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article title.
          type: string
        resource_version:
          description: Not applicable to regular users. In a publisher case, this is the publisher article version
          type: integer
        tags:
          default: []
          description: List of tags to be associated with the collection. Keywords can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/TimelineUpdate"
        title:
          description: Title of collection
          example: Test collection title
          maxLength: 1000
          minLength: 3
          type: string
      required:
        - title
      type: object
      x-tag: collections
    CollectionDOI:
      properties:
        doi:
          description: Reserved DOI
          example: 10.5072/FK2.FIGSHARE.20345
          type: string
      required:
        - doi
      type: object
      x-tag: collections
    CollectionHandle:
      properties:
        handle:
          description: Reserved Handle
          example: 11172/FK2.FIGSHARE.20345
          type: string
      required:
        - handle
      type: object
      x-tag: collections
    CollectionPrivateLinkCreator:
      properties:
        expires_date:
          description: Date when this private link should expire - optional. By default private links expire in 365 days.
          example: 2018-02-22 22:22:22
          type: string
        read_only:
          description: Optional, default true. Set to false to give private link users editing rights for this collection.
          example: true
          type: boolean
      type: object
      x-tag: collections
    CollectionSearch:
      allOf:
        - $ref: "#/components/schemas/CommonSearch"
      properties:
        doi:
          description: Only return collections with this doi
          example: 10.6084/m9.figshare.1407024
          type: string
        handle:
          description: Only return collections with this handle
          example: 10084/figshare.1407024
          type: string
        order:
          default: created_date
          description: The field by which to order.
          enum:
            - published_date
            - modified_date
            - views
            - shares
            - cites
          example: published_date
          type: string
        resource_doi:
          description: Only return collections with this resource_doi
          example: 10.6084/m9.figshare.1407024
          type: string
      type: object
      x-tag: collections
    CollectionUpdate:
      properties:
        articles:
          description: List of articles to be associated with the collection
          example:
            - 2000001
            - 2000005
          items:
            type: integer
          type: array
        authors:
          default: []
          description: "List of authors to be associated with the collection. The list can contain the following fields: id, name, first_name, last_name, email, orcid_id. If an id is supplied, it will take priority and everything else will be ignored. No more than 10 authors. For adding more authors use the specific authors endpoint."
          example:
            - name: John Doe
            - id: 20005
          items:
            type: object
          type: array
        categories:
          default: []
          description: List of category ids to be associated with the collection (e.g [1, 23, 33, 66])
          example:
            - 1
            - 10
            - 11
          items:
            format: int64
            type: integer
          type: array
        categories_by_source_id:
          default: []
          description: List of category source ids to be associated with the article, supersedes the categories property
          example:
            - "300204"
            - "400207"
          items:
            type: string
          type: array
        custom_fields:
          description: List of key, values pairs to be associated with the collection
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        description:
          default: ""
          description: The collection description. In a publisher case, usually this is the remote collection description
          example: Test description of collection
          maxLength: 10000
          type: string
        doi:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting DOIs. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        funding:
          default: ""
          description: Grant number or funding authority
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        group_id:
          description: Not applicable to regular users. This field is reserved to institutions/publishers with access to assign to specific groups
          format: int64
          type: integer
        handle:
          default: ""
          description: Not applicable for regular users. In an institutional case, make sure your group supports setting Handles. This setting is applied by figshare via opening a ticket through our support/helpdesk system.
          type: string
        keywords:
          default: []
          description: List of tags to be associated with the collection. Tags can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        references:
          default: []
          description: List of links to be associated with the collection (e.g ["http://link1", "http://link2", "http://link3"])
          example:
            - http://figshare.com
            - http://api.figshare.com
          items:
            format: link
            type: string
          type: array
        resource_doi:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article DOI.
          type: string
        resource_id:
          description: Not applicable to regular users. In a publisher case, this is the publisher article id
          type: string
        resource_link:
          description: Not applicable to regular users. In a publisher case, this is the publisher article link
          type: string
        resource_title:
          default: ""
          description: Not applicable to regular users. In a publisher case, this is the publisher article title.
          type: string
        resource_version:
          description: Not applicable to regular users. In a publisher case, this is the publisher article version
          type: integer
        tags:
          default: []
          description: List of tags to be associated with the collection. Keywords can be used instead
          example:
            - tag1
            - tag2
          items:
            type: string
          type: array
        timeline:
          $ref: "#/components/schemas/TimelineUpdate"
        title:
          description: Title of collection
          example: Test collection title
          maxLength: 1000
          minLength: 3
          type: string
      type: object
      x-tag: collections
    CollectionVersions:
      properties:
        id:
          description: Version number
          example: 1
          format: int64
          type: integer
        url:
          description: Api endpoint for the collection version
          example: https://api.figshare.com/v2/collections/2000005/versions/1
          format: url
          type: string
      required:
        - id
        - url
      type: object
      x-tag: collections
    CommonSearch:
      properties:
        group:
          description: only return collections from this group
          example: 2000013
          format: int32
          type: integer
        institution:
          description: only return collections from this institution
          example: 2000013
          format: int32
          type: integer
        limit:
          description: Number of results included on a page. Used for pagination with query
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        modified_since:
          description: Filter by article modified date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          example: 2017-12-22
          type: string
        offset:
          description: Where to start the listing(the offset of the first result). Used for pagination with limit
          example: 0
          format: int64
          maximum: 5000
          minimum: 0
          type: integer
        order_direction:
          default: desc
          description: Direction of ordering
          enum:
            - asc
            - desc
          example: desc
          type: string
        page:
          description: Page number. Used for pagination with page_size
          example: 1
          format: int64
          maximum: 5000
          minimum: 1
          type: integer
        page_size:
          default: 10
          description: The number of results included on a page. Used for pagination with page
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        published_since:
          description: Filter by article publishing date. Will only return articles published after the date. date(ISO 8601) YYYY-MM-DD
          example: 2017-12-22
          type: string
        search_for:
          description: Search term
          example: figshare
          type: string
      type: object
      x-tag: common
    ConfidentialityCreator:
      properties:
        reason:
          description: Reason for confidentiality
          type: string
      required:
        - reason
      type: object
    CreateProjectResponse:
      properties:
        entity_id:
          description: Figshare ID of the entity
          example: 33334444
          format: int64
          type: integer
        location:
          description: Url for entity
          format: url
          type: string
      required:
        - entity_id
        - location
      type: object
      x-tag: common
    Curation:
      properties:
        account_id:
          description: The ID of the account of the owner of the article of this review.
          format: int64
          type: integer
        article_id:
          description: The ID of the article of this review.
          format: int64
          type: integer
        assigned_to:
          description: The ID of the account to which this review is assigned.
          format: int64
          type: integer
        comments_count:
          description: The number of comments in the review.
          format: int64
          type: integer
        created_date:
          description: The creation date of the review.
          type: string
        group_id:
          description: The group in which the article is present.
          format: int64
          type: integer
        id:
          description: The review id
          format: int64
          type: integer
        modified_date:
          description: The date the review has been modified.
          type: string
        review_date:
          description: The last time a comment has been added to the review.
          nullable: true
          type: string
        status:
          description: The status of the review.
          enum:
            - pending
            - approved
            - rejected
            - closed
          type: string
        version:
          description: The Version number of the article in review.
          format: int64
          type: integer
      required:
        - id
        - group_id
        - account_id
        - assigned_to
        - article_id
        - version
        - comments_count
        - status
        - created_date
        - modified_date
        - review_date
      type: object
      x-tag: institutions
    CurationComment:
      properties:
        account_id:
          description: The ID of the account which generated this comment.
          format: int64
          type: integer
        id:
          description: The ID of the comment.
          format: int64
          type: integer
        text:
          description: The value/content of the comment.
          type: string
        type:
          description: The ID of the account which generated this comment.
          enum:
            - comment
            - approved
            - rejected
            - closed
          type: string
      required:
        - id
        - account_id
        - type
        - text
      type: object
      x-tag: institutions
    CurationCommentCreate:
      properties:
        text:
          description: The contents/value of the comment
          maxLength: 2000
          minLength: 1
          type: string
      required:
        - text
      type: object
      x-tag: institutions
    CurationDetail:
      allOf:
        - $ref: "#/components/schemas/Curation"
      properties:
        item:
          $ref: "#/components/schemas/ArticleComplete"
      required:
        - item
        - id
        - group_id
        - account_id
        - assigned_to
        - article_id
        - version
        - comments_count
        - status
        - created_date
        - modified_date
        - review_date
      type: object
      x-tag: institutions
    CustomArticleField:
      properties:
        is_mandatory:
          description: True if field completion is mandatory
          example: false
          nullable: true
          type: boolean
        name:
          description: Custom  metadata name
          example: key
          type: string
        value:
          description: Custom metadata value
          example: value
          type: string
      required:
        - name
        - value
        - is_mandatory
      type: object
      x-tag: articles
    CustomArticleFieldAdd:
      properties:
        name:
          description: Custom  metadata name
          example: key
          type: string
        value:
          description: Custom metadata value
          example: value
      required:
        - name
        - value
      type: object
      x-tag: articles
    ErrorMessage:
      properties:
        code:
          description: A machine friendly error code, used by the dev team to identify the error.
          format: int64
          type: integer
        message:
          description: A human friendly message explaining the error.
          type: string
      type: object
      x-tag: common
    FileCreator:
      properties:
        link:
          description: Url for an existing file that will not be uploaded to Figshare
          example: http://figshare.com/file.txt
          type: string
        md5:
          description: MD5 sum pre-computed on client side.
          example: 6c16e6e7d7587bd078e5117dda01d565
          type: string
        name:
          description: File name including the extension; can be omitted only for linked files.
          example: test.py
          type: string
        size:
          description: File size in bytes; can be omitted only for linked files.
          example: 70
          format: int64
          type: integer
      type: object
      x-tag: articles
    FileId:
      properties:
        file_id:
          description: File ID
          example: 123
          format: int64
          type: integer
      type: object
      x-tag: articles
    FundingCreate:
      properties:
        id:
          description: A funding ID as returned by the Funding Search endpoint
          format: int64
          type: integer
        title:
          description: The title of the new user created funding
          type: string
      type: object
      x-tag: funding
    FundingInformation:
      properties:
        funder_name:
          description: Funder's name
          type: string
        grant_code:
          description: The grant code
          type: string
        id:
          description: Funding id
          example: 1
          format: int64
          type: integer
        is_user_defined:
          description: Return whether the grant has been introduced manually
          type: boolean
        title:
          description: The funding name
          example: Scholarly funding
          type: string
        url:
          description: The grant url
          example: https://app.dimensions.ai/details/grant/1
          format: url
          type: string
      required:
        - id
        - title
        - grant_code
        - funder_name
        - is_user_defined
        - url
      type: object
      x-tag: funding
    FundingSearch:
      properties:
        search_for:
          description: Search term
          type: string
      type: object
      x-tag: funding
    Group:
      properties:
        association_criteria:
          description: HR code associated with group, if code exists
          example: IT
          type: string
        id:
          description: Group id
          example: 1
          format: int64
          type: integer
        name:
          description: Group name
          example: Materials
          type: string
        parent_id:
          description: Parent group if any
          example: 0
          format: int64
          type: integer
        resource_id:
          description: Group resource id
          example: ""
          type: string
      required:
        - id
        - name
        - resource_id
        - parent_id
        - association_criteria
      type: object
      x-tag: institutions
    GroupEmbargoOptions:
      properties:
        id:
          description: Embargo option id
          example: 364
          format: int64
          type: integer
        ip_name:
          description: IP range name; value appears if type is ip_range
          example: Figshare IP range
          type: string
        type:
          description: Embargo permission type
          enum:
            - logged_in
            - ip_range
            - administrator
          example: ip_range
          type: string
      required:
        - id
        - type
        - ip_name
      type: object
      x-tag: institutions
    Institution:
      properties:
        domain:
          description: Institution domain
          example: null
          nullable: true
          type: string
        id:
          description: Institution id
          example: 0
          format: int64
          type: integer
        name:
          description: Institution name
          example: Institution
          type: string
      required:
        - id
        - name
        - domain
      type: object
      x-tag: institutions
    InstitutionAccountsSearch:
      properties:
        email:
          description: filter by email
          example: alan@institution.com
          type: string
        institution_user_id:
          description: filter by institution_user_id
          example: alan
          type: string
        is_active:
          description: Filter by active status
          format: int64
          maximum: 1
          minimum: 0
          type: integer
        limit:
          description: Number of results included on a page. Used for pagination with query
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        offset:
          description: Where to start the listing(the offset of the first result). Used for pagination with limit
          example: 0
          format: int64
          maximum: 5000
          minimum: 0
          type: integer
        page:
          description: Page number. Used for pagination with page_size
          example: 1
          format: int64
          maximum: 5000
          minimum: 1
          type: integer
        page_size:
          default: 10
          description: The number of results included on a page. Used for pagination with page
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        search_for:
          description: Search term
          example: figshare
          type: string
      type: object
      x-tag: institutions
    ItemType:
      properties:
        icon:
          description: The string identifying the icon of the item type.
          example: paper
          type: string
        id:
          description: The ID of the item type.
          format: int64
          minimum: 1
          type: integer
        is_selectable:
          description: The selectable status
          example: true
          type: boolean
        name:
          description: The name of the item type
          example: journal contribution
          type: string
        public_description:
          description: The description of the item type.
          example: This is the description of an item type
          type: string
        string_id:
          description: The string identifier of the item type.
          example: journal_contribution
          type: string
        url_name:
          description: The URL name of the item type.
          example: journal_contribution
          type: string
      required:
        - id
        - name
        - string_id
        - icon
        - public_description
        - is_selectable
        - url_name
      type: object
    License:
      properties:
        name:
          description: License name
          example: CC BY
          type: string
        url:
          description: License url
          example: http://creativecommons.org/licenses/by/4.0/
          format: url
          type: string
        value:
          description: License value
          example: 1
          format: int64
          type: integer
      required:
        - value
        - name
        - url
      type: object
      x-tag: institutions
    Location:
      properties:
        location:
          description: Url for item
          format: url
          type: string
      required:
        - location
      type: object
      x-tag: common
    LocationWarnings:
      properties:
        entity_id:
          description: Figshare ID of the entity
          example: 33334444
          format: int64
          type: integer
        location:
          description: Url for entity
          format: url
          type: string
        warnings:
          description: Issues encountered during the operation
          items:
            type: string
          type: array
      required:
        - entity_id
        - location
        - warnings
      type: object
      x-tag: common
    LocationWarningsUpdate:
      properties:
        location:
          description: Url for entity
          format: url
          type: string
        warnings:
          description: Issues encountered during the operation
          items:
            type: string
          type: array
      required:
        - location
        - warnings
      type: object
      x-tag: common
    PrivateArticleSearch:
      allOf:
        - $ref: "#/components/schemas/ArticleSearch"
      properties:
        resource_id:
          description: only return collections with this resource_id
          example: "1407024"
          type: string
      type: object
      x-tag: articles
    PrivateAuthorsSearch:
      properties:
        group_id:
          description: Return only authors in this group or subgroups of the group
          format: int64
          type: integer
        institution_id:
          description: Return only authors associated to this institution
          example: 1
          format: int64
          type: integer
        is_active:
          description: Return only active authors if True
          type: boolean
        is_public:
          description: Return only authors that have published items if True
          type: boolean
        limit:
          description: Number of results included on a page. Used for pagination with query
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        offset:
          description: Where to start the listing(the offset of the first result). Used for pagination with limit
          example: 0
          format: int64
          maximum: 5000
          minimum: 0
          type: integer
        orcid:
          description: Orcid of author
          type: string
        order:
          default: published_date
          description: The field by which to order. Default varies by endpoint/resource.
          enum:
            - published_date
            - modified_date
            - views
            - shares
            - downloads
            - cites
          example: published_date
          type: string
        order_direction:
          default: desc
          description: Direction of ordering
          enum:
            - asc
            - desc
          example: desc
          type: string
        page:
          description: Page number. Used for pagination with page_size
          example: 1
          format: int64
          maximum: 5000
          minimum: 1
          type: integer
        page_size:
          default: 10
          description: The number of results included on a page. Used for pagination with page
          example: 10
          format: int64
          maximum: 1000
          minimum: 1
          type: integer
        search_for:
          description: Search term
          example: figshare
          type: string
      type: object
      x-tag: authors
    PrivateCollectionSearch:
      allOf:
        - $ref: "#/components/schemas/CollectionSearch"
      properties:
        resource_id:
          description: only return collections with this resource_id
          example: "1407024"
          type: string
      type: object
      x-tag: collections
    PrivateFile:
      allOf:
        - $ref: "#/components/schemas/PublicFile"
      properties:
        is_attached_to_public_version:
          description: True if the file is attached to a public item version
          example: true
          type: boolean
        preview_state:
          description: File preview state
          example: preview not available
          type: string
        status:
          description: Status for file upload
          example: created
          nullable: true
          type: string
        upload_token:
          description: Token for file upload
          example: 9dfc5fe3-d617-4d93-ac11-8afe7e984a4b
          type: string
        upload_url:
          description: Upload url for file
          example: https://uploads.figshare.com
          format: url
          type: string
        viewer_type:
          description: File viewer type
          type: string
      required:
        - status
        - viewer_type
        - preview_state
        - upload_url
        - upload_token
        - is_attached_to_public_version
        - id
        - name
        - size
        - is_link_only
        - download_url
        - supplied_md5
        - computed_md5
      type: object
      x-tag: common
    PrivateLink:
      properties:
        expires_date:
          description: Date when link will expire
          example: 2015-07-03T00:00:00
          type: string
        html_location:
          description: HTML url for private link
          example: https://figshare.com/s/d5ec7a85bcd6dbe9d9b2
          format: url
          type: string
        id:
          description: Private link id
          example: 0cfb0dbeac92df445df4aba45f63fdc85fa0b9a888b64e157ce3c93b576aa300fb3621ef3a219515dd482
          type: string
        is_active:
          description: True if private link is active
          example: true
          type: boolean
      required:
        - id
        - is_active
        - expires_date
        - html_location
      type: object
      x-tag: articles
    PrivateLinkCreator:
      properties:
        expires_date:
          description: Date when this private link should expire - optional. By default private links expire in 365 days.
          example: 2018-02-22 22:22:22
          type: string
        read_only:
          description: Optional, default true. Set to false to give private link users editing rights for this collection.
          example: true
          type: boolean
      type: object
      x-tag: articles
    PrivateLinkResponse:
      properties:
        html_location:
          description: HTML url for private link
          example: https://figshare.com/s/d5ec7a85bcd6dbe9d9b2
          format: url
          type: string
        location:
          description: Url for private link
          format: url
          type: string
        token:
          description: Token for private link
          example: d5ec7a85bcd6dbe9d9b2
          type: string
      required:
        - location
        - token
        - html_location
      type: object
      x-tag: common
    Project:
      properties:
        id:
          description: Project id
          example: 1
          format: int64
          type: integer
        published_date:
          description: Date when project was published
          example: 2017-05-16T14:55:08Z
          nullable: true
          type: string
        title:
          description: Project title
          example: project
          type: string
        url:
          description: Api endpoint
          example: http://api.figshare.com/v2/account/projects/1
          type: string
      required:
        - url
        - published_date
        - id
        - title
      type: object
      x-tag: projects
    ProjectArticle:
      allOf:
        - $ref: "#/components/schemas/Article"
      properties:
        categories:
          description: List of categories selected for the article
          items:
            $ref: "#/components/schemas/Category"
          type: array
        citation:
          description: Article citation
          example: |-
            lilliput, figshare admin (2017): first project item. figshare.
             
             Retrieved: 14 01, May 22, 2017 (GMT)
          type: string
        confidential_reason:
          description: Confidentiality reason
          example: none
          type: string
        created_date:
          description: Date when article was created
          example: 2017-05-18T11:49:03Z
          type: string
        description:
          description: Article description
          example: article description
          type: string
        embargo_date:
          description: Date when embargo lifts
          example: 2017-05-18T11:49:03Z
          nullable: true
          type: string
        embargo_reason:
          description: Reason for embargo
          example: not complete
          type: string
        embargo_title:
          description: Title for embargo
          example: File(s) under embargo
          type: string
        embargo_type:
          description: Article embargo
          example: article
          nullable: true
          type: string
        funding:
          description: Article funding
          example: none
          type: string
        funding_list:
          items:
            type: integer
          type: array
        has_linked_file:
          description: True if any files are linked to the article
          example: true
          type: boolean
        is_active:
          description: True if article is active
          example: true
          type: boolean
        is_confidential:
          description: Article Confidentiality
          example: true
          type: boolean
        is_embargoed:
          description: True if article is embargoed
          example: true
          type: boolean
        is_metadata_record:
          description: True if article has no files
          example: false
          type: boolean
        is_public:
          description: True if article is published
          example: true
          type: boolean
        license:
          $ref: "#/components/schemas/License"
        metadata_reason:
          description: Article metadata reason
          example: hosted somewhere else
          type: string
        modified_date:
          description: Date when article was last modified
          example: 2017-05-18T11:49:03Z
          nullable: true
          type: string
        references:
          description: List of references
          example:
            - http://figshare.com
            - http://figshare.com/api
          items:
            format: url
            type: string
          type: array
        size:
          description: Article size
          example: 69939
          format: int64
          type: integer
        status:
          description: Article status
          example: public
          type: string
        tags:
          description: List of article tags
          example:
            - t1
            - t2
            - t3
          items:
            type: string
          type: array
        version:
          description: Article version
          example: 1
          format: int64
          type: integer
      required:
        - citation
        - confidential_reason
        - embargo_type
        - is_confidential
        - size
        - funding
        - funding_list
        - tags
        - version
        - is_active
        - is_metadata_record
        - metadata_reason
        - status
        - description
        - is_embargoed
        - embargo_date
        - is_public
        - modified_date
        - created_date
        - has_linked_file
        - categories
        - license
        - embargo_title
        - embargo_reason
        - references
        - id
        - title
        - doi
        - handle
        - group_id
        - url
        - url_public_html
        - url_public_api
        - url_private_html
        - url_private_api
        - published_date
        - timeline
        - thumb
        - defined_type
        - defined_type_name
      type: object
      x-tag: articles
    ProjectCollaborator:
      properties:
        name:
          description: Collaborator name
          example: name
          type: string
        role_name:
          description: Collaborator role
          example: Owner
          type: string
        status:
          description: Status of collaborator invitation
          example: invited
          type: string
        user_id:
          description: Collaborator id
          example: 1
          type: integer
      required:
        - status
        - role_name
        - user_id
        - name
      type: object
      x-tag: projects
    ProjectCollaboratorInvite:
      properties:
        comment:
          description: Text sent when inviting the user to the project
          example: hey
          type: string
        email:
          description: Collaborator email
          example: user@domain.com
          type: string
        role_name:
          description: Role of the the collaborator inside the project
          enum:
            - viewer
            - collaborator
          example: viewer
          type: string
        user_id:
          description: User id of the collaborator
          example: 100008
          format: int64
          type: integer
      required:
        - role_name
      type: object
      x-tag: projects
    ProjectComplete:
      allOf:
        - $ref: "#/components/schemas/Project"
      properties:
        collaborators:
          description: List of project collaborators
          items:
            $ref: "#/components/schemas/Collaborator"
          type: array
        description:
          description: Project description
          example: description
          type: string
        figshare_url:
          description: Project public url
          example: https://figshare.com/projects/project/1
          nullable: true
          type: string
        funding:
          description: Project funding
          example: ""
          type: string
        funding_list:
          description: Full Project funding information
          items:
            $ref: "#/components/schemas/FundingInformation"
          type: array
      required:
        - funding
        - funding_list
        - description
        - figshare_url
        - collaborators
        - url
        - published_date
        - id
        - title
      type: object
      x-tag: projects
    ProjectCompletePrivate:
      allOf:
        - $ref: "#/components/schemas/ProjectPrivate"
      properties:
        account_id:
          description: ID of the account owning the project
          example: 1000001
          format: int64
          type: integer
        collaborators:
          description: List of project collaborators
          items:
            $ref: "#/components/schemas/Collaborator"
          type: array
        created_date:
          description: Date when project was created
          example: 2017-05-16T14:52:54Z
          type: string
        custom_fields:
          description: Collection custom fields
          items:
            $ref: "#/components/schemas/CustomArticleField"
          type: array
        description:
          description: Project description
          example: description
          type: string
        figshare_url:
          description: Project public url
          example: https://figshare.com/projects/project/1
          nullable: true
          type: string
        funding:
          description: Project funding
          example: none
          type: string
        funding_list:
          description: Full Project funding information
          items:
            $ref: "#/components/schemas/FundingInformation"
          type: array
        group_id:
          description: Group of project if any
          example: 0
          format: int64
          type: integer
        modified_date:
          description: Date when project was last modified
          example: 2017-05-16T14:52:54Z
          type: string
        quota:
          description: Project quota
          example: 0
          format: int64
          type: integer
        used_quota:
          description: Project used quota
          example: 0
          format: int64
          type: integer
        used_quota_private:
          description: Project private quota used
          example: 0
          format: int64
          type: integer
        used_quota_public:
          description: Project public quota used
          example: 0
          format: int64
          type: integer
      required:
        - funding
        - funding_list
        - description
        - figshare_url
        - collaborators
        - quota
        - used_quota
        - created_date
        - modified_date
        - used_quota_private
        - used_quota_public
        - group_id
        - account_id
        - custom_fields
        - role
        - storage
        - url
        - published_date
        - id
        - title
      type: object
      x-tag: projects
    ProjectCreate:
      properties:
        custom_fields:
          description: List of key, values pairs to be associated with the project
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        description:
          description: Project description
          example: project description
          maxLength: 10000
          type: string
        funding:
          description: Grant number or organization(s) that funded this project. Up to 2000 characters permitted.
          example: ""
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        group_id:
          description: Only if project type is group.
          example: 0
          format: int64
          type: integer
        title:
          description: The title for this project - mandatory. 3 - 1000 characters.
          example: project title
          maxLength: 1000
          minLength: 3
          type: string
      required:
        - title
      type: object
      x-tag: projects
    ProjectNote:
      properties:
        abstract:
          description: Note Abstract - short/truncated content
          example: text
          type: string
        created_date:
          description: Date when note was created
          example: 2017-05-16T16:49:11Z
          type: string
        id:
          description: Project note id
          example: 1
          format: int64
          type: integer
        modified_date:
          description: Date when note was last modified
          example: 2017-05-16T16:49:11Z
          type: string
        user_id:
          description: User who wrote the note
          example: 100008
          format: int64
          type: integer
        user_name:
          description: Username of the one who wrote the note
          example: user
          type: string
      required:
        - id
        - user_id
        - abstract
        - user_name
        - created_date
        - modified_date
      type: object
      x-tag: projects
    ProjectNoteCreate:
      properties:
        text:
          description: Text of the note
          example: note to remember
          minLength: 3
          type: string
      required:
        - text
      type: object
      x-tag: projects
    ProjectNotePrivate:
      allOf:
        - $ref: "#/components/schemas/ProjectNote"
      properties:
        text:
          description: Full text of note
          example: text
          type: string
      required:
        - text
        - id
        - user_id
        - abstract
        - user_name
        - created_date
        - modified_date
      type: object
      x-tag: projects
    ProjectPrivate:
      allOf:
        - $ref: "#/components/schemas/Project"
      properties:
        role:
          description: Role inside this project
          enum:
            - Owner
            - Collaborator
            - Viewer
          example: Owner
          type: string
        storage:
          description: Project storage type
          enum:
            - individual
            - group
          example: individual
          type: string
      required:
        - role
        - storage
        - url
        - published_date
        - id
        - title
      type: object
      x-tag: projects
    ProjectUpdate:
      properties:
        custom_fields:
          description: List of key, values pairs to be associated with the project
          example:
            defined_key: value for it
          type: object
        custom_fields_list:
          description: List of custom fields values, supersedes custom_fields parameter
          items:
            $ref: "#/components/schemas/CustomArticleFieldAdd"
          type: array
        description:
          description: Project description
          example: project description
          maxLength: 10000
          type: string
        funding:
          description: Grant number or organization(s) that funded this project. Up to 2000 characters permitted.
          example: ""
          type: string
        funding_list:
          description: Funding creation / update items
          items:
            $ref: "#/components/schemas/FundingCreate"
          type: array
        title:
          description: The title for this project - mandatory. 3 - 1000 characters.
          example: project title
          maxLength: 1000
          minLength: 3
          type: string
      type: object
      x-tag: projects
    ProjectsSearch:
      allOf:
        - $ref: "#/components/schemas/CommonSearch"
      properties:
        order:
          default: published_date
          description: The field by which to order.
          enum:
            - published_date
            - modified_date
            - views
          example: published_date
          type: string
      type: object
      x-tag: projects
    PublicFile:
      properties:
        computed_md5:
          description: File computed md5
          example: 043a51806d646e88cafbf19e7b82846f
          type: string
        download_url:
          description: Url for file download
          example: https://ndownloader.figshare.com/files/3000002
          format: url
          type: string
        id:
          description: File id
          example: 3000002
          format: int64
          type: integer
        is_link_only:
          description: True if file is hosted somewhere else
          example: false
          type: boolean
        name:
          description: File name
          example: test.xls
          type: string
        size:
          description: File size
          example: 14848
          format: int64
          type: integer
        supplied_md5:
          description: File supplied md5
          example: 043a51806d646e88cafbf19e7b82846f
          type: string
      required:
        - id
        - name
        - size
        - is_link_only
        - download_url
        - supplied_md5
        - computed_md5
      type: object
      x-tag: common
    Resource:
      properties:
        doi:
          default: ""
          description: DOI of resource item
          type: string
        id:
          default: ""
          description: ID of resource item
          example: aaaa23512
          maxLength: 255
          type: string
        link:
          default: ""
          description: Link of resource item
          example: https://docs.figshare.com
          maxLength: 255
          type: string
        status:
          default: ""
          description: Status of resource item
          example: frozen
          maxLength: 100
          type: string
        title:
          default: ""
          description: Title of resource item
          example: Test title
          maxLength: 1000
          type: string
        version:
          default: 0
          description: Version of resource item
          example: 1
          format: int64
          type: integer
      type: object
      x-tag: resource
    ResponseMessage:
      properties:
        message:
          description: Response message text
          example: Project 1 has been published
          type: string
      required:
        - message
      type: object
      x-tag: common
    Role:
      properties:
        category:
          description: Role category
          example: group
          type: string
        description:
          description: Role description
          type: string
        id:
          description: Role id
          example: 1
          format: int64
          type: integer
        name:
          description: Role name
          example: Curator
          type: string
      required:
        - id
        - name
        - category
        - description
      type: object
      x-tag: institutions
    ShortAccount:
      properties:
        active:
          description: Account activity status
          example: 0
          format: int64
          type: integer
        email:
          description: User email
          example: user@domain.com
          type: string
        first_name:
          description: First Name
          example: Doe
          type: string
        id:
          description: Account id
          example: 1495682
          format: int64
          type: integer
        institution_id:
          description: Account institution
          example: 1
          format: int64
          type: integer
        institution_user_id:
          description: Account institution user id
          example: 1
          type: string
        last_name:
          description: Last Name
          example: John
          type: string
        orcid_id:
          description: ORCID iD associated to account
          example: 0000-0001-2345-6789
          type: string
        quota:
          description: Total storage available to account, in bytes
          example: 1074000000
          format: int64
          type: integer
        used_quota:
          description: Storage used by the account, in bytes
          example: 1074000000
          format: int64
          type: integer
        user_id:
          description: User id associated with account, useful for example for adding the account as an author to an item
          example: 1000001
          format: int64
          type: integer
      required:
        - id
        - first_name
        - last_name
        - institution_id
        - email
        - active
        - institution_user_id
        - quota
        - used_quota
        - user_id
        - orcid_id
      type: object
      x-tag: other
    ShortCustomField:
      properties:
        field_type:
          description: Custom field type
          enum:
            - text
            - textarea
            - dropdown
            - url
            - email
            - date
            - dropdown_large_list
          example: textarea
          type: string
        id:
          description: Custom field id
          example: 365
          format: int64
          type: integer
        name:
          description: Custom field name
          example: my custom field
          type: string
      required:
        - id
        - name
        - field_type
      type: object
      x-tag: institutions
    Timeline:
      allOf:
        - $ref: "#/components/schemas/TimelineUpdate"
      properties:
        posted:
          description: Posted date
          example: 2015-12-31
          nullable: true
          type: string
        revision:
          description: Revision date from curation (if curated)
          example: 2015-12-31
          nullable: true
          type: string
        submission:
          description: Submission date in curation (if curated)
          example: 2015-12-31
          nullable: true
          type: string
      required:
        - posted
        - submission
        - revision
        - firstOnline
        - publisherPublication
        - publisherAcceptance
      type: object
      x-tag: timeline
    TimelineUpdate:
      properties:
        firstOnline:
          description: Online posted date
          example: 2015-12-31
          type: string
        publisherAcceptance:
          description: Date when the item was accepted for publication
          example: 2015-12-31
          type: string
        publisherPublication:
          description: Publish date
          example: 2015-12-31
          type: string
      type: object
      x-tag: timeline_update
    UploadFilePart:
      properties:
        endOffset:
          description: Indexes on byte range. zero-based and inclusive
          example: 69
          format: int64
          type: integer
        locked:
          description: When a part is being uploaded it is being locked, by setting the locked flag to true. No changes/uploads can happen on this part from other requests.
          type: boolean
        partNo:
          description: File part id
          example: 1
          format: int64
          type: integer
        startOffset:
          description: Indexes on byte range. zero-based and inclusive
          example: 0
          format: int64
          type: integer
        status:
          description: part status
          enum:
            - PENDING
            - COMPLETE
          type: string
      type: object
      x-tag: upload
    UploadInfo:
      properties:
        md5:
          description: md5 provided on upload initialization
          example: 3a7f451c068f4e13260034c611378140
          type: string
        name:
          description: name of file on upload server
          example: 3000017/test.py
          type: string
        parts:
          description: Uploads parts
          items:
            $ref: "#/components/schemas/UploadFilePart"
          type: array
        size:
          description: size of file in bytes
          example: 70
          format: int64
          type: integer
        status:
          description: Upload status
          enum:
            - PENDING
            - COMPLETED
            - ABORTED
          type: string
        token:
          description: token received after initializing a file upload
          example: 693a2802-cd61-430d-b89f-507f0f6d8fd3
          type: string
      type: object
      x-tag: upload
    User:
      properties:
        first_name:
          description: First Name
          example: Doe
          type: string
        id:
          description: User id
          example: 1495682
          format: int64
          type: integer
        is_active:
          description: Account activity status
          example: true
          type: boolean
        is_public:
          description: Account public status
          example: true
          type: boolean
        job_title:
          description: User Job title
          example: programmer
          type: string
        last_name:
          description: Last Name
          example: John
          type: string
        name:
          description: Full Name
          example: John Doe
          type: string
        orcid_id:
          description: Orcid associated to this User
          example: 1234-5678-9123-1234
          type: string
        url_name:
          description: Name that appears in website url
          example: John_Doe
          type: string
      required:
        - id
        - first_name
        - last_name
        - name
        - is_active
        - url_name
        - is_public
        - job_title
        - orcid_id
      type: object
      x-tag: other
  securitySchemes:
    OAuth2:
      flows:
        authorizationCode:
          authorizationUrl: https://figshare.com/account/applications/authorize
          scopes:
            all: Grants all access
          tokenUrl: https://api.figshare.com/v2/token
      type: oauth2
x-additional-descriptions:
  - position: bottom
    subsections:
      - content: description_upload_steps
        title: Steps to upload file
      - content: description_upload_api
        title: Uploads API
      - content: description_upload_parts_api
        title: Parts API
      - content: description_upload_example
        title: Example Upload on figshare
      - content: description_upload_output
        title: Output of Script
      - content: description_upload_bash
        title: Upload Bash Script
      - content: description_upload_from_s3
        title: Upload S3 File to Figshare
    title: Upload files
  - position: bottom
    subsections:
      - content: description_search_intro
        title: How to find data on figshare
      - content: description_search_operators
        title: Search operators
      - content: description_search_attributes
        title: Searchable attributes
      - content: description_search_quick
        title: Quick search
      - content: description_search_advanced
        title: Advanced search
      - content: description_search_combined
        title: Combined field search
      - content: description_search_complex
        title: Complex searches
    title: Search
  - position: bottom
    subsections:
      - subsections:
          - content: description_stats_service_intro
            title: Intro
          - content: description_stats_service_auth
            title: Authentication
          - content: description_stats_service_errors
            title: Errors
          - content: description_stats_service_endpoints
            title: Endpoints
        title: Stats service
      - subsections:
          - content: description_stats_breakdown_endpoints
            title: Endpoints for retrieving a breakdown
          - content: description_stats_breakdown_auth
            title: Authorization
          - content: description_stats_breakdown_format
            title: Endpoint format
          - content: description_stats_breakdown_params
            title: Request parameters
          - content: description_stats_breakdown_examples
            title: Examples
        title: Breakdown
      - subsections:
          - content: description_stats_timeline_endpoints
            title: Endpoints for retrieving a timeline
          - content: description_stats_timeline_auth
            title: Authorization
          - content: description_stats_timeline_format
            title: Endpoint format
          - content: description_stats_timeline_params
            title: Request parameters
          - content: description_stats_timeline_examples
            title: Examples
        title: Timeline
      - subsections:
          - content: description_stats_tops_endpoints
            title: Endpoints for retrieving tops
          - content: description_stats_tops_auth
            title: Authorization
          - content: description_stats_tops_format
            title: Endpoint format
          - content: description_stats_tops_params
            title: Request parameters
          - content: description_stats_tops_examples
            title: Examples
        title: Tops
      - subsections:
          - content: description_stats_totals_endpoints
            title: Endpoints for retrieving totals
          - content: description_stats_totals_auth
            title: Authorization
          - content: description_stats_totals_format
            title: Endpoint format
          - content: description_stats_totals_examples
            title: Examples
        title: Totals
      - subsections:
          - content: description_stats_count_endpoints
            title: Endpoint for retrieving counts
          - content: description_stats_count_auth
            title: Authorization
          - content: description_stats_count_format
            title: Endpoint format
          - content: description_stats_count_examples
            title: Example
        title: Count Articles
    title: Stats
  - position: bottom
    subsections:
      - content: description_oai_pmh
        title: OAI-PMH
      - content: description_oai_baseurl
        title: Base URL
      - content: description_oai_itemarticle
        title: Item equals Article
      - content: description_oai_metadata
        title: Metadata formats
      - content: description_oai_datestamp
        title: Datestamps
      - content: description_oai_sets
        title: Sets
      - content: description_oai_update_schedule
        title: Update schedule
      - content: description_oai_pagination
        title: Pagination and Resumption Token Expiration
      - content: description_oai_ratelimit
        title: Rate limit
      - content: description_oai_futuredev
        title: Future development
      - content: description_oai_someexamples
        title: Some examples
    title: OAI PMH
  - position: bottom
    subsections:
      - content: description_hrfeed_endpoint
        title: HR Feed Private Endpoint
      - subsections:
          - content: description_hrfeed_examples_python
            title: Python
          - content: description_hrfeed_examples_java
            title: Java
          - content: description_hrfeed_examples_csharp
            title: C Sharp
          - content: description_hrfeed_examples_curl
            title: Curl
        title: HR Feed examples
      - content: description_hrfeed_response
        title: Response
      - content: description_hrfeed_errors
        title: Errors
      - content: description_hrfeed_notes
        title: Notes
    title: HR Feed
  - position: bottom
    subsections:
      - content: description_custom_fields_endpoint
        title: Custom Fields Private Endpoints
      - subsections:
          - content: description_custom_fields_examples_python
            title: Python
          - content: description_custom_fields_examples_java
            title: Java
          - content: description_custom_fields_examples_csharp
            title: C Sharp
          - content: description_custom_fields_examples_curl
            title: Curl
        title: Custom Fields examples
      - content: description_custom_fields_response
        title: Response
      - content: description_custom_fields_errors
        title: Errors
      - content: description_custom_fields_notes
        title: Notes
    title: Custom Fields
  - position: top
    subsections:
      - content: description_intro
        title: Introduction
      - subsections:
          - content: description_oauth_intro
            title: Intro
          - content: description_oauth_quick
            title: Quick guide
          - content: description_oauth_scope
            title: Scope
          - content: description_oauth_grant
            title: Grant Types
        title: OAuth
      - subsections:
          - content: description_api_features
            title: Feature list
          - content: description_api_parameters
            title: Sending parameters
          - content: description_api_resourcerepresentation
            title: Resource representations
          - content: description_api_auth
            title: Authentication
          - content: description_api_errors
            title: Errors
          - content: description_api_search
            title: Searching filtering and pagination
          - content: description_api_ratelimit
            title: Rate limiting
          - content: description_api_requests
            title: Conditional requests
          - content: description_api_cors
            title: CORS policy
          - content: description_api_impersonation
            title: Impersonation
        title: API description
    title: figshare Documentation
