Felt Projects API

Projects help you organize maps and manage team permissions. With these APIs, you can manage the projects in your workspace.

Operations 5

GET /api/v2/projects List projects #
POST /api/v2/projects Create project #
DELETE /api/v2/projects/{project_id} Delete project #
GET /api/v2/projects/{project_id} Get project #
POST /api/v2/projects/{project_id}/update Update project #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/felt-projects-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

felt-projects-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Felt REST API v2.0
  title: Felt Comments Projects API
  version: '2.0'
servers:
- url: https://felt.com
  variables: {}
security: []
tags:
- description: 'Projects help you organize maps and manage team permissions.


    With these APIs, you can manage the projects in your workspace.

    '
  name: Projects
  x-page-description: APIs to organize maps
  x-page-icon: folder
paths:
  /api/v2/projects:
    get:
      callbacks: {}
      description: Retrieve all projects accessible to the authenticated user within the workspace.
      operationId: list_projects
      parameters:
      - description: Only needed when using the API as part of a plugin
        in: query
        name: workspace_id
        required: false
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectReferenceList'
          description: Projects
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: NotFoundError
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: InternalServerError
      security:
      - bearerAuth: []
      summary: List projects
      tags:
      - Projects
    post:
      callbacks: {}
      description: Create a new project with specified name and visibility settings within the workspace.
      operationId: create_project
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectCreateParams'
        description: Project create params
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
          description: Project
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: NotFoundError
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: InternalServerError
      security:
      - bearerAuth: []
      summary: Create project
      tags:
      - Projects
  /api/v2/projects/{project_id}:
    delete:
      callbacks: {}
      description: 'Permanently delete a project and all its contained maps and folders.


        {% hint style="danger" %}

        Caution: Deleting a project deletes all of the folders and maps inside!

        {% endhint %}

        '
      operationId: delete_project
      parameters:
      - description: 'The ID of the Project to delete. Note: This will delete all Folders and Maps inside the project!'
        in: path
        name: project_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: NotFoundError
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: InternalServerError
      security:
      - bearerAuth: []
      summary: Delete project
      tags:
      - Projects
    get:
      callbacks: {}
      description: Retrieve detailed information about a specific project including metadata, permissions, and references to the maps in the project.
      operationId: show_project
      parameters:
      - description: ''
        in: path
        name: project_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
          description: Project
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: NotFoundError
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: InternalServerError
      security:
      - bearerAuth: []
      summary: Get project
      tags:
      - Projects
  /api/v2/projects/{project_id}/update:
    post:
      callbacks: {}
      description: Update project properties including name and visibility settings.
      operationId: update_project
      parameters:
      - description: The ID of the project to update
        in: path
        name: project_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectUpdateParams'
        description: Project update params
        required: false
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Project'
          description: Project
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedError'
          description: UnauthorizedError
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundError'
          description: NotFoundError
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonErrorResponse'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
          description: InternalServerError
      security:
      - bearerAuth: []
      summary: Update project
      tags:
      - Projects
components:
  schemas:
    FeltID:
      example: luCHyMruTQ6ozGk3gPJfEB
      format: felt_id
      title: FeltID
      type: string
    Project:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/FeltID'
        maps:
          items:
            $ref: '#/components/schemas/MapReference'
          type: array
        max_inherited_permission:
          description: The maximum permission level workspace members inherit on team-visible projects.
          enum:
          - view_only
          - view_and_contribute
          - view_and_edit
          example: view_only
          type: string
        name:
          type: string
        type:
          enum:
          - project
          type: string
        visibility:
          enum:
          - workspace
          - private
          type: string
      required:
      - id
      - type
      - name
      - visibility
      - max_inherited_permission
      - maps
      title: Project
      type: object
    ProjectCreateParams:
      additionalProperties: false
      properties:
        max_inherited_permission:
          description: The maximum permission level workspace members inherit on team-visible projects. Only applicable when visibility is "workspace".
          enum:
          - view_only
          - view_and_contribute
          - view_and_edit
          example: view_only
          type: string
        name:
          description: The name to be used for the Project
          type: string
        visibility:
          description: Either viewable by all members of the workspace, or private to users who are invited.
          enum:
          - workspace
          - private
          type: string
      required:
      - name
      - visibility
      title: ProjectCreateParams
      type: object
    ProjectUpdateParams:
      additionalProperties: false
      properties:
        max_inherited_permission:
          description: The maximum permission level workspace members inherit on team-visible projects. Only applicable when visibility is "workspace".
          enum:
          - view_only
          - view_and_contribute
          - view_and_edit
          example: view_only
          type: string
        name:
          description: The name to be used for the Project
          type: string
        visibility:
          description: Either viewable by all members of the workspace, or private to users who are invited.
          enum:
          - workspace
          - private
          type: string
      title: ProjectUpdateParams
      type: object
    InternalServerError:
      properties:
        errors:
          items:
            properties:
              detail:
                type: string
              source:
                properties:
                  parameter:
                    type: string
                type: object
              title:
                type: string
            type: object
          type: array
      title: InternalServerError
      type: object
    ProjectReference:
      additionalProperties: false
      properties:
        id:
          $ref: '#/components/schemas/FeltID'
        links:
          properties:
            self:
              example: https://felt.com/api/v2/projects/V0dnOMOuTd9B9BOsL9C0UjmqC
              type: string
          type: object
        max_inherited_permission:
          description: The maximum permission level workspace members inherit on team-visible projects.
          enum:
          - view_only
          - view_and_contribute
          - view_and_edit
          example: view_only
          type: string
        name:
          type: string
        type:
          enum:
          - project_reference
          type: string
        visibility:
          enum:
          - workspace
          - private
          type: string
      required:
      - id
      - type
      - name
      - visibility
      - max_inherited_permission
      title: ProjectReference
      type: object
    UnauthorizedError:
      properties:
        errors:
          items:
            properties:
              detail:
                type: string
              source:
                properties:
                  header:
                    enum:
                    - authorization
                    type: string
                type: object
              title:
                type: string
            type: object
          type: array
      title: UnauthorizedError
      type: object
    NotFoundError:
      properties:
        errors:
          items:
            properties:
              detail:
                type: string
              source:
                properties:
                  parameter:
                    type: string
                type: object
              title:
                type: string
            type: object
          type: array
      title: NotFoundError
      type: object
    ProjectReferenceList:
      items:
        $ref: '#/components/schemas/ProjectReference'
      title: ProjectReferenceList
      type: array
    MapReference:
      additionalProperties: false
      properties:
        created_at:
          example: '2024-05-25T15:51:34'
          format: date_time
          type: string
        folder_id:
          type:
          - string
          - 'null'
        id:
          $ref: '#/components/schemas/FeltID'
        links:
          properties:
            self:
              example: https://felt.com/api/v2/maps/V0dnOMOuTd9B9BOsL9C0UjmqC
              type: string
          type: object
        project_id:
          type: string
        public_access:
          enum:
          - private
          - view_only
          - view_and_comment
          - view_comment_and_edit
          type: string
        thumbnail_url:
          description: A static thumbnail image of the map
          type:
          - string
          - 'null'
        title:
          type: string
        type:
          enum:
          - map_reference
          type: string
        url:
          type: string
        visited_at:
          format: date_time
          type:
          - string
          - 'null'
      required:
      - id
      - type
      - url
      - title
      - thumbnail_url
      - created_at
      - visited_at
      - project_id
      - folder_id
      - public_access
      title: MapReference
      type: object
    JsonErrorResponse:
      properties:
        errors:
          items:
            properties:
              detail:
                example: null value where string expected
                type: string
              source:
                properties:
                  pointer:
                    example: /data/attributes/petName
                    type: string
                required:
                - pointer
                type: object
              title:
                example: Invalid value
                type: string
            required:
            - title
            - source
            - detail
            type: object
          type: array
      required:
      - errors
      title: JsonErrorResponse
      type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: YOUR_API_KEY
      scheme: bearer
      type: http