/** * Pipedrive API v1 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) * * The version of the OpenAPI document: 1.0.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosInstance } from 'axios'; import { RequestArgs, BaseAPI } from '../base'; import { AddProjectRequest } from '../models'; import { AddProjectResponse } from '../models'; import { DeleteProjectResponse } from '../models'; import { GetActivitiesCollectionResponse } from '../models'; import { GetProjectGroupsResponse } from '../models'; import { GetProjectPlanResponse } from '../models'; import { GetProjectResponse } from '../models'; import { GetProjectsResponse } from '../models'; import { GetTasksResponse } from '../models'; import { ProjectPutPlanItemBodyObject } from '../models'; import { UpdateActivityPlanItemResponse } from '../models'; import { UpdateProjectRequest } from '../models'; import { UpdateProjectResponse } from '../models'; import { UpdateTaskPlanItemResponse } from '../models'; /** * ProjectsApi - axios parameter creator * @export */ export declare const ProjectsApiAxiosParamCreator: (configuration?: Configuration) => { /** * Adds a new project. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys. * @summary Add a project * @param {AddProjectRequest} [AddProjectRequest] * @throws {RequiredError} */ addProject: (AddProjectRequest?: AddProjectRequest) => Promise; /** * Archives a project. * @summary Archive a project * @param {number} id The ID of the project * @throws {RequiredError} */ archiveProject: (id: number) => Promise; /** * Marks a project as deleted. * @summary Delete a project * @param {number} id The ID of the project * @throws {RequiredError} */ deleteProject: (id: number) => Promise; /** * Returns the details of a specific project. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the `key` value of project fields. * @summary Get details of a project * @param {number} id The ID of the project * @throws {RequiredError} */ getProject: (id: number) => Promise; /** * Returns activities linked to a specific project. * @summary Returns project activities * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectActivities: (id: number) => Promise; /** * Returns all active groups under a specific project. * @summary Returns project groups * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectGroups: (id: number) => Promise; /** * Returns information about items in a project plan. Items consists of tasks and activities and are linked to specific project phase and group. * @summary Returns project plan * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectPlan: (id: number) => Promise; /** * Returns tasks linked to a specific project. * @summary Returns project tasks * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectTasks: (id: number) => Promise; /** * Returns all projects. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination. * @summary Get all projects * @param {string} [cursor] For pagination, the marker (an opaque string value) representing the first item on the next page * @param {number} [limit] For pagination, the limit of entries to be returned. If not provided, 100 items will be returned. * @param {number} [filter_id] The ID of the filter to use * @param {string} [status] If supplied, includes only projects with the specified statuses. Possible values are `open`, `completed`, `canceled` and `deleted`. By default `deleted` projects are not returned. * @param {number} [phase_id] If supplied, only projects in specified phase are returned * @param {boolean} [include_archived] If supplied with `true` then archived projects are also included in the response. By default only not archived projects are returned. * @throws {RequiredError} */ getProjects: (cursor?: string, limit?: number, filter_id?: number, status?: string, phase_id?: number, include_archived?: boolean) => Promise; /** * Updates an activity phase or group in a project. * @summary Update activity in project plan * @param {number} id The ID of the project * @param {number} activityId The ID of the activity * @param {ProjectPutPlanItemBodyObject} [ProjectPutPlanItemBodyObject] * @throws {RequiredError} */ putProjectPlanActivity: (id: number, activityId: number, ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject) => Promise; /** * Updates a task phase or group in a project. * @summary Update task in project plan * @param {number} id The ID of the project * @param {number} taskId The ID of the task * @param {ProjectPutPlanItemBodyObject} [ProjectPutPlanItemBodyObject] * @throws {RequiredError} */ putProjectPlanTask: (id: number, taskId: number, ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject) => Promise; /** * Updates a project. * @summary Update a project * @param {number} id The ID of the project * @param {UpdateProjectRequest} [UpdateProjectRequest] * @throws {RequiredError} */ updateProject: (id: number, UpdateProjectRequest?: UpdateProjectRequest) => Promise; }; /** * ProjectsApi - functional programming interface * @export */ export declare const ProjectsApiFp: (configuration?: Configuration) => { /** * Adds a new project. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys. * @summary Add a project * @param {AddProjectRequest} [AddProjectRequest] * @throws {RequiredError} */ addProject(AddProjectRequest?: AddProjectRequest): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Archives a project. * @summary Archive a project * @param {number} id The ID of the project * @throws {RequiredError} */ archiveProject(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Marks a project as deleted. * @summary Delete a project * @param {number} id The ID of the project * @throws {RequiredError} */ deleteProject(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns the details of a specific project. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the `key` value of project fields. * @summary Get details of a project * @param {number} id The ID of the project * @throws {RequiredError} */ getProject(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns activities linked to a specific project. * @summary Returns project activities * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectActivities(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns all active groups under a specific project. * @summary Returns project groups * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectGroups(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns information about items in a project plan. Items consists of tasks and activities and are linked to specific project phase and group. * @summary Returns project plan * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectPlan(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns tasks linked to a specific project. * @summary Returns project tasks * @param {number} id The ID of the project * @throws {RequiredError} */ getProjectTasks(id: number): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Returns all projects. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination. * @summary Get all projects * @param {string} [cursor] For pagination, the marker (an opaque string value) representing the first item on the next page * @param {number} [limit] For pagination, the limit of entries to be returned. If not provided, 100 items will be returned. * @param {number} [filter_id] The ID of the filter to use * @param {string} [status] If supplied, includes only projects with the specified statuses. Possible values are `open`, `completed`, `canceled` and `deleted`. By default `deleted` projects are not returned. * @param {number} [phase_id] If supplied, only projects in specified phase are returned * @param {boolean} [include_archived] If supplied with `true` then archived projects are also included in the response. By default only not archived projects are returned. * @throws {RequiredError} */ getProjects(cursor?: string, limit?: number, filter_id?: number, status?: string, phase_id?: number, include_archived?: boolean): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Updates an activity phase or group in a project. * @summary Update activity in project plan * @param {number} id The ID of the project * @param {number} activityId The ID of the activity * @param {ProjectPutPlanItemBodyObject} [ProjectPutPlanItemBodyObject] * @throws {RequiredError} */ putProjectPlanActivity(id: number, activityId: number, ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Updates a task phase or group in a project. * @summary Update task in project plan * @param {number} id The ID of the project * @param {number} taskId The ID of the task * @param {ProjectPutPlanItemBodyObject} [ProjectPutPlanItemBodyObject] * @throws {RequiredError} */ putProjectPlanTask(id: number, taskId: number, ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; /** * Updates a project. * @summary Update a project * @param {number} id The ID of the project * @param {UpdateProjectRequest} [UpdateProjectRequest] * @throws {RequiredError} */ updateProject(id: number, UpdateProjectRequest?: UpdateProjectRequest): Promise<(axios?: AxiosInstance, basePath?: string) => Promise>; }; /** * ProjectsApi - factory interface * @export */ export declare const ProjectsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * Adds a new project. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys. * @summary Add a project * @param {ProjectsApiAddProjectRequest} requestParameters Request parameters. * @throws {RequiredError} */ addProject(requestParameters?: ProjectsApiAddProjectRequest): Promise; /** * Archives a project. * @summary Archive a project * @param {ProjectsApiArchiveProjectRequest} requestParameters Request parameters. * @throws {RequiredError} */ archiveProject(requestParameters: ProjectsApiArchiveProjectRequest): Promise; /** * Marks a project as deleted. * @summary Delete a project * @param {ProjectsApiDeleteProjectRequest} requestParameters Request parameters. * @throws {RequiredError} */ deleteProject(requestParameters: ProjectsApiDeleteProjectRequest): Promise; /** * Returns the details of a specific project. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the `key` value of project fields. * @summary Get details of a project * @param {ProjectsApiGetProjectRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProject(requestParameters: ProjectsApiGetProjectRequest): Promise; /** * Returns activities linked to a specific project. * @summary Returns project activities * @param {ProjectsApiGetProjectActivitiesRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProjectActivities(requestParameters: ProjectsApiGetProjectActivitiesRequest): Promise; /** * Returns all active groups under a specific project. * @summary Returns project groups * @param {ProjectsApiGetProjectGroupsRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProjectGroups(requestParameters: ProjectsApiGetProjectGroupsRequest): Promise; /** * Returns information about items in a project plan. Items consists of tasks and activities and are linked to specific project phase and group. * @summary Returns project plan * @param {ProjectsApiGetProjectPlanRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProjectPlan(requestParameters: ProjectsApiGetProjectPlanRequest): Promise; /** * Returns tasks linked to a specific project. * @summary Returns project tasks * @param {ProjectsApiGetProjectTasksRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProjectTasks(requestParameters: ProjectsApiGetProjectTasksRequest): Promise; /** * Returns all projects. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination. * @summary Get all projects * @param {ProjectsApiGetProjectsRequest} requestParameters Request parameters. * @throws {RequiredError} */ getProjects(requestParameters?: ProjectsApiGetProjectsRequest): Promise; /** * Updates an activity phase or group in a project. * @summary Update activity in project plan * @param {ProjectsApiPutProjectPlanActivityRequest} requestParameters Request parameters. * @throws {RequiredError} */ putProjectPlanActivity(requestParameters: ProjectsApiPutProjectPlanActivityRequest): Promise; /** * Updates a task phase or group in a project. * @summary Update task in project plan * @param {ProjectsApiPutProjectPlanTaskRequest} requestParameters Request parameters. * @throws {RequiredError} */ putProjectPlanTask(requestParameters: ProjectsApiPutProjectPlanTaskRequest): Promise; /** * Updates a project. * @summary Update a project * @param {ProjectsApiUpdateProjectRequest} requestParameters Request parameters. * @throws {RequiredError} */ updateProject(requestParameters: ProjectsApiUpdateProjectRequest): Promise; }; /** * Request parameters for addProject operation in ProjectsApi. * @export * @interface ProjectsApiAddProjectRequest */ export interface ProjectsApiAddProjectRequest { /** * * @type {AddProjectRequest} * @memberof ProjectsApiAddProject */ readonly AddProjectRequest?: AddProjectRequest; } /** * Request parameters for archiveProject operation in ProjectsApi. * @export * @interface ProjectsApiArchiveProjectRequest */ export interface ProjectsApiArchiveProjectRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiArchiveProject */ readonly id: number; } /** * Request parameters for deleteProject operation in ProjectsApi. * @export * @interface ProjectsApiDeleteProjectRequest */ export interface ProjectsApiDeleteProjectRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiDeleteProject */ readonly id: number; } /** * Request parameters for getProject operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectRequest */ export interface ProjectsApiGetProjectRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiGetProject */ readonly id: number; } /** * Request parameters for getProjectActivities operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectActivitiesRequest */ export interface ProjectsApiGetProjectActivitiesRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiGetProjectActivities */ readonly id: number; } /** * Request parameters for getProjectGroups operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectGroupsRequest */ export interface ProjectsApiGetProjectGroupsRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiGetProjectGroups */ readonly id: number; } /** * Request parameters for getProjectPlan operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectPlanRequest */ export interface ProjectsApiGetProjectPlanRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiGetProjectPlan */ readonly id: number; } /** * Request parameters for getProjectTasks operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectTasksRequest */ export interface ProjectsApiGetProjectTasksRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiGetProjectTasks */ readonly id: number; } /** * Request parameters for getProjects operation in ProjectsApi. * @export * @interface ProjectsApiGetProjectsRequest */ export interface ProjectsApiGetProjectsRequest { /** * For pagination, the marker (an opaque string value) representing the first item on the next page * @type {string} * @memberof ProjectsApiGetProjects */ readonly cursor?: string; /** * For pagination, the limit of entries to be returned. If not provided, 100 items will be returned. * @type {number} * @memberof ProjectsApiGetProjects */ readonly limit?: number; /** * The ID of the filter to use * @type {number} * @memberof ProjectsApiGetProjects */ readonly filter_id?: number; /** * If supplied, includes only projects with the specified statuses. Possible values are `open`, `completed`, `canceled` and `deleted`. By default `deleted` projects are not returned. * @type {string} * @memberof ProjectsApiGetProjects */ readonly status?: string; /** * If supplied, only projects in specified phase are returned * @type {number} * @memberof ProjectsApiGetProjects */ readonly phase_id?: number; /** * If supplied with `true` then archived projects are also included in the response. By default only not archived projects are returned. * @type {boolean} * @memberof ProjectsApiGetProjects */ readonly include_archived?: boolean; } /** * Request parameters for putProjectPlanActivity operation in ProjectsApi. * @export * @interface ProjectsApiPutProjectPlanActivityRequest */ export interface ProjectsApiPutProjectPlanActivityRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiPutProjectPlanActivity */ readonly id: number; /** * The ID of the activity * @type {number} * @memberof ProjectsApiPutProjectPlanActivity */ readonly activityId: number; /** * * @type {ProjectPutPlanItemBodyObject} * @memberof ProjectsApiPutProjectPlanActivity */ readonly ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject; } /** * Request parameters for putProjectPlanTask operation in ProjectsApi. * @export * @interface ProjectsApiPutProjectPlanTaskRequest */ export interface ProjectsApiPutProjectPlanTaskRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiPutProjectPlanTask */ readonly id: number; /** * The ID of the task * @type {number} * @memberof ProjectsApiPutProjectPlanTask */ readonly taskId: number; /** * * @type {ProjectPutPlanItemBodyObject} * @memberof ProjectsApiPutProjectPlanTask */ readonly ProjectPutPlanItemBodyObject?: ProjectPutPlanItemBodyObject; } /** * Request parameters for updateProject operation in ProjectsApi. * @export * @interface ProjectsApiUpdateProjectRequest */ export interface ProjectsApiUpdateProjectRequest { /** * The ID of the project * @type {number} * @memberof ProjectsApiUpdateProject */ readonly id: number; /** * * @type {UpdateProjectRequest} * @memberof ProjectsApiUpdateProject */ readonly UpdateProjectRequest?: UpdateProjectRequest; } /** * ProjectsApi - object-oriented interface * @export * @class ProjectsApi * @extends {BaseAPI} */ export declare class ProjectsApi extends BaseAPI { /** * Adds a new project. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys. * @summary Add a project * @param {ProjectsApiAddProjectRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ addProject(requestParameters?: ProjectsApiAddProjectRequest): Promise; /** * Archives a project. * @summary Archive a project * @param {ProjectsApiArchiveProjectRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ archiveProject(requestParameters: ProjectsApiArchiveProjectRequest): Promise; /** * Marks a project as deleted. * @summary Delete a project * @param {ProjectsApiDeleteProjectRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ deleteProject(requestParameters: ProjectsApiDeleteProjectRequest): Promise; /** * Returns the details of a specific project. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the `key` value of project fields. * @summary Get details of a project * @param {ProjectsApiGetProjectRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProject(requestParameters: ProjectsApiGetProjectRequest): Promise; /** * Returns activities linked to a specific project. * @summary Returns project activities * @param {ProjectsApiGetProjectActivitiesRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProjectActivities(requestParameters: ProjectsApiGetProjectActivitiesRequest): Promise; /** * Returns all active groups under a specific project. * @summary Returns project groups * @param {ProjectsApiGetProjectGroupsRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProjectGroups(requestParameters: ProjectsApiGetProjectGroupsRequest): Promise; /** * Returns information about items in a project plan. Items consists of tasks and activities and are linked to specific project phase and group. * @summary Returns project plan * @param {ProjectsApiGetProjectPlanRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProjectPlan(requestParameters: ProjectsApiGetProjectPlanRequest): Promise; /** * Returns tasks linked to a specific project. * @summary Returns project tasks * @param {ProjectsApiGetProjectTasksRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProjectTasks(requestParameters: ProjectsApiGetProjectTasksRequest): Promise; /** * Returns all projects. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination. * @summary Get all projects * @param {ProjectsApiGetProjectsRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ getProjects(requestParameters?: ProjectsApiGetProjectsRequest): Promise; /** * Updates an activity phase or group in a project. * @summary Update activity in project plan * @param {ProjectsApiPutProjectPlanActivityRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ putProjectPlanActivity(requestParameters: ProjectsApiPutProjectPlanActivityRequest): Promise; /** * Updates a task phase or group in a project. * @summary Update task in project plan * @param {ProjectsApiPutProjectPlanTaskRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ putProjectPlanTask(requestParameters: ProjectsApiPutProjectPlanTaskRequest): Promise; /** * Updates a project. * @summary Update a project * @param {ProjectsApiUpdateProjectRequest} requestParameters Request parameters. * @throws {RequiredError} * @memberof ProjectsApi */ updateProject(requestParameters: ProjectsApiUpdateProjectRequest): Promise; }