{
  "service": "projectmanager",
  "displayName": "ProjectManager",
  "categories": [
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "PROJECTMANAGER_API_KEY",
      "description": "ProjectManager API key used with the Authorization Bearer header. Admins can create keys from Integrations > API Keys in the ProjectManager app.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://www.projectmanager.com",
  "actions": [
    {
      "id": "projectmanager.get_project",
      "service": "projectmanager",
      "name": "get_project",
      "description": "Retrieve a ProjectManager project by its unique identifier.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "minLength": 1,
            "description": "The unique identifier of the Project to retrieve."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for retrieving a Project."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "item": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "One ProjectManager object returned by the API."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw ProjectManager response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "item"
        ],
        "description": "A ProjectManager object response normalized for connector callers."
      }
    },
    {
      "id": "projectmanager.list_projects",
      "service": "projectmanager",
      "name": "list_projects",
      "description": "Query ProjectManager projects with optional OData parameters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "top": {
            "type": "integer",
            "description": "The number of records to return."
          },
          "skip": {
            "type": "integer",
            "description": "The number of records to skip before returning records."
          },
          "filter": {
            "type": "string",
            "minLength": 1,
            "description": "The OData filter expression to apply."
          },
          "orderby": {
            "type": "string",
            "minLength": 1,
            "description": "The OData order expression to apply."
          },
          "expand": {
            "type": "string",
            "minLength": 1,
            "description": "The related data to include in the response."
          }
        },
        "additionalProperties": false,
        "description": "OData query parameters for a ProjectManager collection endpoint."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One ProjectManager object returned by the API."
            },
            "description": "The objects returned by ProjectManager."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw ProjectManager response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "items"
        ],
        "description": "A ProjectManager collection response normalized for connector callers."
      }
    },
    {
      "id": "projectmanager.list_tasks",
      "service": "projectmanager",
      "name": "list_tasks",
      "description": "Query ProjectManager tasks with optional OData parameters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "top": {
            "type": "integer",
            "description": "The number of records to return."
          },
          "skip": {
            "type": "integer",
            "description": "The number of records to skip before returning records."
          },
          "filter": {
            "type": "string",
            "minLength": 1,
            "description": "The OData filter expression to apply."
          },
          "orderby": {
            "type": "string",
            "minLength": 1,
            "description": "The OData order expression to apply."
          },
          "expand": {
            "type": "string",
            "minLength": 1,
            "description": "The related data to include in the response."
          }
        },
        "additionalProperties": false,
        "description": "OData query parameters for a ProjectManager collection endpoint."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One ProjectManager object returned by the API."
            },
            "description": "The objects returned by ProjectManager."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw ProjectManager response payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "items"
        ],
        "description": "A ProjectManager collection response normalized for connector callers."
      }
    }
  ]
}
