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

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ Class | Method | HTTP request | Description
*DocumentsApi* | [**deleteDocument**](docs/DocumentsApi.md#deletedocument) | **DELETE** /public/v1/documents/{id} | Delete document by id
*DocumentsApi* | [**deleteLinkedObject**](docs/DocumentsApi.md#deletelinkedobject) | **DELETE** /public/v1/documents/{id}/linked-objects/{linked_object_id} | Delete Linked Object
*DocumentsApi* | [**detailsDocument**](docs/DocumentsApi.md#detailsdocument) | **GET** /public/v1/documents/{id}/details | Document details
*DocumentsApi* | [**documentMoveToFolder**](docs/DocumentsApi.md#documentmovetofolder) | **DELETE** /public/v1/documents/{id}/move-to-folder/{folder_id} | Document move to folder
*DocumentsApi* | [**downloadDocument**](docs/DocumentsApi.md#downloaddocument) | **GET** /public/v1/documents/{id}/download | Document download
*DocumentsApi* | [**downloadProtectedDocument**](docs/DocumentsApi.md#downloadprotecteddocument) | **GET** /public/v1/documents/{id}/download-protected | Download document protected
*DocumentsApi* | [**listDocuments**](docs/DocumentsApi.md#listdocuments) | **GET** /public/v1/documents | List documents
Expand Down
64 changes: 64 additions & 0 deletions docs/DocumentsApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Method | HTTP request | Description
[**deleteDocument**](DocumentsApi.md#deleteDocument) | **DELETE** /public/v1/documents/{id} | Delete document by id
[**deleteLinkedObject**](DocumentsApi.md#deleteLinkedObject) | **DELETE** /public/v1/documents/{id}/linked-objects/{linked_object_id} | Delete Linked Object
[**detailsDocument**](DocumentsApi.md#detailsDocument) | **GET** /public/v1/documents/{id}/details | Document details
[**documentMoveToFolder**](DocumentsApi.md#documentMoveToFolder) | **DELETE** /public/v1/documents/{id}/move-to-folder/{folder_id} | Document move to folder
[**downloadDocument**](DocumentsApi.md#downloadDocument) | **GET** /public/v1/documents/{id}/download | Document download
[**downloadProtectedDocument**](DocumentsApi.md#downloadProtectedDocument) | **GET** /public/v1/documents/{id}/download-protected | Download document protected
[**listDocuments**](DocumentsApi.md#listDocuments) | **GET** /public/v1/documents | List documents
Expand Down Expand Up @@ -572,6 +573,69 @@ Name | Type | Description | Notes

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

# **documentMoveToFolder**
> void documentMoveToFolder()


### Example


```typescript
import * as pd_api from 'pandadoc-node-client';

// replace it with your API key
const API_KEY = "YOUR_API_KEY";
const configuration = pd_api.createConfiguration(
{ authMethods: {apiKey: `API-Key ${API_KEY}`} }
);
const apiInstance = new pd_api.DocumentsApi(configuration);

const body:pd_api.DocumentsApiDocumentMoveToFolderRequest = {
// string | Specify document ID.
id: "ZPeAfcpzr9aiVs5vqUf6jg",
// string | Specify folder ID.
folderId: "ZPeAfcpzr9aiVs5vqUf6jg",
};

apiInstance.documentMoveToFolder(body).then((data) => {
console.log('API called successfully. Returned data: %o', data);
}).catch((error) => console.error(error));
```


### Parameters

Name | Type | Description | Notes
------------- | ------------- | ------------- | -------------
**id** | [**string**] | Specify document ID. | defaults to undefined
**folderId** | [**string**] | Specify folder ID. | defaults to undefined


### Return type

**void**

### Authorization

[apiKey](../README.md#apiKey), [oauth2](../README.md#oauth2)

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json


### HTTP response details
| Status code | Description | Response headers |
|-------------|-------------|------------------|
**204** | No content | - |
**401** | Authentication error | - |
**403** | Permission error | - |
**404** | Not found | - |
**429** | Too Many Requests | - |

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)

# **downloadDocument**
> HttpFile downloadDocument()

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "pandadoc-node-client",
"version": "5.3.0",
"version": "5.4.0",
"description": "The Official PandaDoc Node client SDK",
"author": "PandaDoc",
"keywords": [
Expand Down
103 changes: 103 additions & 0 deletions src/apis/DocumentsApi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -411,6 +411,56 @@ export class DocumentsApiRequestFactory extends BaseAPIRequestFactory {
return requestContext;
}

/**
* Document move to folder
* @param id Specify document ID.
* @param folderId Specify folder ID.
*/
public async documentMoveToFolder(id: string, folderId: string, _options?: Configuration): Promise<RequestContext> {
let _config = _options || this.configuration;

// verify required parameter 'id' is not null or undefined
if (id === null || id === undefined) {
throw new RequiredError("DocumentsApi", "documentMoveToFolder", "id");
}


// verify required parameter 'folderId' is not null or undefined
if (folderId === null || folderId === undefined) {
throw new RequiredError("DocumentsApi", "documentMoveToFolder", "folderId");
}


// Path Params
const localVarPath = '/public/v1/documents/{id}/move-to-folder/{folder_id}'
.replace('{' + 'id' + '}', encodeURIComponent(String(id)))
.replace('{' + 'folder_id' + '}', encodeURIComponent(String(folderId)));

// Make Request Context
const requestContext = _config.baseServer.makeRequestContext(localVarPath, HttpMethod.DELETE);
requestContext.setHeaderParam("Accept", "application/json, */*;q=0.8")


let authMethod: SecurityAuthentication | undefined;
// Apply auth methods
authMethod = _config.authMethods["apiKey"]
if (authMethod?.applySecurityAuthentication) {
await authMethod?.applySecurityAuthentication(requestContext);
}
// Apply auth methods
authMethod = _config.authMethods["oauth2"]
if (authMethod?.applySecurityAuthentication) {
await authMethod?.applySecurityAuthentication(requestContext);
}

const defaultAuth: SecurityAuthentication | undefined = _options?.authMethods?.default || this.configuration?.authMethods?.default
if (defaultAuth?.applySecurityAuthentication) {
await defaultAuth?.applySecurityAuthentication(requestContext);
}

return requestContext;
}

/**
* Document download
* @param id Specify document ID.
Expand Down Expand Up @@ -1433,6 +1483,59 @@ export class DocumentsApiResponseProcessor {
throw new ApiException<string | Buffer | undefined>(response.httpStatusCode, "Unknown API Status Code!", await response.getBodyAsAny(), response.headers);
}

/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to documentMoveToFolder
* @throws ApiException if the response code was not in [200, 299]
*/
public async documentMoveToFolder(response: ResponseContext): Promise<void > {
const contentType = ObjectSerializer.normalizeMediaType(response.headers["content-type"]);
if (isCodeInRange("204", response.httpStatusCode)) {
return;
}
if (isCodeInRange("401", response.httpStatusCode)) {
const body: any = ObjectSerializer.deserialize(
ObjectSerializer.parse(await response.body.text(), contentType),
"any", ""
) as any;
throw new ApiException<any>(401, "Authentication error", body, response.headers);
}
if (isCodeInRange("403", response.httpStatusCode)) {
const body: any = ObjectSerializer.deserialize(
ObjectSerializer.parse(await response.body.text(), contentType),
"any", ""
) as any;
throw new ApiException<any>(403, "Permission error", body, response.headers);
}
if (isCodeInRange("404", response.httpStatusCode)) {
const body: any = ObjectSerializer.deserialize(
ObjectSerializer.parse(await response.body.text(), contentType),
"any", ""
) as any;
throw new ApiException<any>(404, "Not found", body, response.headers);
}
if (isCodeInRange("429", response.httpStatusCode)) {
const body: any = ObjectSerializer.deserialize(
ObjectSerializer.parse(await response.body.text(), contentType),
"any", ""
) as any;
throw new ApiException<any>(429, "Too Many Requests", body, response.headers);
}

// Work around for missing responses in specification, e.g. for petstore.yaml
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
const body: void = ObjectSerializer.deserialize(
ObjectSerializer.parse(await response.body.text(), contentType),
"void", ""
) as void;
return body;
}

throw new ApiException<string | Buffer | undefined>(response.httpStatusCode, "Unknown API Status Code!", await response.getBodyAsAny(), response.headers);
}

/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
Expand Down
2 changes: 1 addition & 1 deletion src/http/http.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export type RequestBody = undefined | string | FormData | URLSearchParams;
*/
export class RequestContext {
private headers: { [key: string]: string } = {
"User-Agent": "pandadoc_node_client/5.3.0",
"User-Agent": "pandadoc_node_client/5.4.0",
};
private body: RequestBody = undefined;
private url: URLParse;
Expand Down
2 changes: 1 addition & 1 deletion src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ export * from "./apis/exception";
export * from "./servers";

export { PromiseMiddleware as Middleware } from './middleware';
export { APILogsApiDetailsLogRequest, APILogsApiListLogsRequest, ObjectAPILogsApi as APILogsApi, ContactsApiCreateContactRequest, ContactsApiDeleteContactRequest, ContactsApiDetailsContactRequest, ContactsApiListContactsRequest, ContactsApiUpdateContactRequest, ObjectContactsApi as ContactsApi, ContentLibraryItemsApiDetailsContentLibraryItemRequest, ContentLibraryItemsApiListContentLibraryItemsRequest, ObjectContentLibraryItemsApi as ContentLibraryItemsApi, DocumentAttachmentsApiCreateDocumentAttachmentRequest, DocumentAttachmentsApiDeleteDocumentAttachmentRequest, DocumentAttachmentsApiDetailsDocumentAttachmentRequest, DocumentAttachmentsApiDownloadDocumentAttachmentRequest, DocumentAttachmentsApiListDocumentAttachmentsRequest, ObjectDocumentAttachmentsApi as DocumentAttachmentsApi, DocumentsApiChangeDocumentStatusRequest, DocumentsApiCreateDocumentRequest, DocumentsApiCreateDocumentLinkRequest, DocumentsApiCreateLinkedObjectRequest, DocumentsApiDeleteDocumentRequest, DocumentsApiDeleteLinkedObjectRequest, DocumentsApiDetailsDocumentRequest, DocumentsApiDownloadDocumentRequest, DocumentsApiDownloadProtectedDocumentRequest, DocumentsApiListDocumentsRequest, DocumentsApiListLinkedObjectsRequest, DocumentsApiSendDocumentRequest, DocumentsApiStatusDocumentRequest, DocumentsApiTransferAllDocumentsOwnershipRequest, DocumentsApiTransferDocumentOwnershipRequest, DocumentsApiUpdateDocumentRequest, ObjectDocumentsApi as DocumentsApi, FoldersAPIApiCreateDocumentFolderRequest, FoldersAPIApiCreateTemplateFolderRequest, FoldersAPIApiListDocumentFoldersRequest, FoldersAPIApiListTemplateFoldersRequest, FoldersAPIApiRenameDocumentFolderRequest, FoldersAPIApiRenameTemplateFolderRequest, ObjectFoldersAPIApi as FoldersAPIApi, FormsApiListFormRequest, ObjectFormsApi as FormsApi, MembersApiDetailsCurrentMemberRequest, MembersApiDetailsMemberRequest, MembersApiListMembersRequest, ObjectMembersApi as MembersApi, OAuth20AuthenticationApiAccessTokenRequest, ObjectOAuth20AuthenticationApi as OAuth20AuthenticationApi, TemplatesApiDeleteTemplateRequest, TemplatesApiDetailsTemplateRequest, TemplatesApiListTemplatesRequest, ObjectTemplatesApi as TemplatesApi, WebhookEventsApiDetailsWebhookEventRequest, WebhookEventsApiListWebhookEventRequest, ObjectWebhookEventsApi as WebhookEventsApi, WebhookSubscriptionsApiCreateWebhookSubscriptionRequest, WebhookSubscriptionsApiDeleteWebhookSubscriptionRequest, WebhookSubscriptionsApiDetailsWebhookSubscriptionRequest, WebhookSubscriptionsApiListWebhookSubscriptionsRequest, WebhookSubscriptionsApiUpdateWebhookSubscriptionRequest, WebhookSubscriptionsApiUpdateWebhookSubscriptionSharedKeyRequest, ObjectWebhookSubscriptionsApi as WebhookSubscriptionsApi } from './types/ObjectParamAPI';
export { APILogsApiDetailsLogRequest, APILogsApiListLogsRequest, ObjectAPILogsApi as APILogsApi, ContactsApiCreateContactRequest, ContactsApiDeleteContactRequest, ContactsApiDetailsContactRequest, ContactsApiListContactsRequest, ContactsApiUpdateContactRequest, ObjectContactsApi as ContactsApi, ContentLibraryItemsApiDetailsContentLibraryItemRequest, ContentLibraryItemsApiListContentLibraryItemsRequest, ObjectContentLibraryItemsApi as ContentLibraryItemsApi, DocumentAttachmentsApiCreateDocumentAttachmentRequest, DocumentAttachmentsApiDeleteDocumentAttachmentRequest, DocumentAttachmentsApiDetailsDocumentAttachmentRequest, DocumentAttachmentsApiDownloadDocumentAttachmentRequest, DocumentAttachmentsApiListDocumentAttachmentsRequest, ObjectDocumentAttachmentsApi as DocumentAttachmentsApi, DocumentsApiChangeDocumentStatusRequest, DocumentsApiCreateDocumentRequest, DocumentsApiCreateDocumentLinkRequest, DocumentsApiCreateLinkedObjectRequest, DocumentsApiDeleteDocumentRequest, DocumentsApiDeleteLinkedObjectRequest, DocumentsApiDetailsDocumentRequest, DocumentsApiDocumentMoveToFolderRequest, DocumentsApiDownloadDocumentRequest, DocumentsApiDownloadProtectedDocumentRequest, DocumentsApiListDocumentsRequest, DocumentsApiListLinkedObjectsRequest, DocumentsApiSendDocumentRequest, DocumentsApiStatusDocumentRequest, DocumentsApiTransferAllDocumentsOwnershipRequest, DocumentsApiTransferDocumentOwnershipRequest, DocumentsApiUpdateDocumentRequest, ObjectDocumentsApi as DocumentsApi, FoldersAPIApiCreateDocumentFolderRequest, FoldersAPIApiCreateTemplateFolderRequest, FoldersAPIApiListDocumentFoldersRequest, FoldersAPIApiListTemplateFoldersRequest, FoldersAPIApiRenameDocumentFolderRequest, FoldersAPIApiRenameTemplateFolderRequest, ObjectFoldersAPIApi as FoldersAPIApi, FormsApiListFormRequest, ObjectFormsApi as FormsApi, MembersApiDetailsCurrentMemberRequest, MembersApiDetailsMemberRequest, MembersApiListMembersRequest, ObjectMembersApi as MembersApi, OAuth20AuthenticationApiAccessTokenRequest, ObjectOAuth20AuthenticationApi as OAuth20AuthenticationApi, TemplatesApiDeleteTemplateRequest, TemplatesApiDetailsTemplateRequest, TemplatesApiListTemplatesRequest, ObjectTemplatesApi as TemplatesApi, WebhookEventsApiDetailsWebhookEventRequest, WebhookEventsApiListWebhookEventRequest, ObjectWebhookEventsApi as WebhookEventsApi, WebhookSubscriptionsApiCreateWebhookSubscriptionRequest, WebhookSubscriptionsApiDeleteWebhookSubscriptionRequest, WebhookSubscriptionsApiDetailsWebhookSubscriptionRequest, WebhookSubscriptionsApiListWebhookSubscriptionsRequest, WebhookSubscriptionsApiUpdateWebhookSubscriptionRequest, WebhookSubscriptionsApiUpdateWebhookSubscriptionSharedKeyRequest, ObjectWebhookSubscriptionsApi as WebhookSubscriptionsApi } from './types/ObjectParamAPI';

75 changes: 75 additions & 0 deletions src/models/DocumentUpdateRequest.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
/**
* PandaDoc Public API
* PandaDoc Public API documentation
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/

import { DocumentCreateByTemplateRequestTokens } from './DocumentCreateByTemplateRequestTokens';
import { DocumentUpdateRequestRecipients } from './DocumentUpdateRequestRecipients';
import { PricingTableRequest } from './PricingTableRequest';
import { HttpFile } from '../http/http';

export class DocumentUpdateRequest {
/**
* The list of recipients you're sending the document to. The ID or email are required. If the ID is passed, an existing recipient will be updated. If the email is passed, a new recipient will be added to CC.
*/
'recipients'?: Array<DocumentUpdateRequestRecipients>;
/**
* You may pass a list of fields/values which exist in a document. Please use `Merge Field` property of the fields like the key.
*/
'fields'?: any;
/**
* You can pass a list of tokens/values. If a token name exists in a document then the value will be updated. Otherwise, a new token will be added to the document.
*/
'tokens'?: Array<DocumentCreateByTemplateRequestTokens>;
/**
* You can pass arbitrary data in the key-value format to associate custom information with a document. This information is returned in any API requests for the document details by id. If metadata exists in a document then the value will be updated. Otherwise, metadata will be added to the document.
*/
'metadata'?: any;
'pricingTables'?: Array<PricingTableRequest>;

static readonly discriminator: string | undefined = undefined;

static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
{
"name": "recipients",
"baseName": "recipients",
"type": "Array<DocumentUpdateRequestRecipients>",
"format": ""
},
{
"name": "fields",
"baseName": "fields",
"type": "any",
"format": ""
},
{
"name": "tokens",
"baseName": "tokens",
"type": "Array<DocumentCreateByTemplateRequestTokens>",
"format": ""
},
{
"name": "metadata",
"baseName": "metadata",
"type": "any",
"format": ""
},
{
"name": "pricingTables",
"baseName": "pricing_tables",
"type": "Array<PricingTableRequest>",
"format": ""
} ];

static getAttributeTypeMap() {
return DocumentUpdateRequest.attributeTypeMap;
}

public constructor() {
}
}

53 changes: 53 additions & 0 deletions src/models/DocumentUpdateRequestRecipients.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/**
* PandaDoc Public API
* PandaDoc Public API documentation
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/

import { HttpFile } from '../http/http';

export class DocumentUpdateRequestRecipients {
'id'?: string;
'email'?: string;
'firstName'?: string;
'lastName'?: string;

static readonly discriminator: string | undefined = undefined;

static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
{
"name": "id",
"baseName": "id",
"type": "string",
"format": ""
},
{
"name": "email",
"baseName": "email",
"type": "string",
"format": ""
},
{
"name": "firstName",
"baseName": "first_name",
"type": "string",
"format": ""
},
{
"name": "lastName",
"baseName": "last_name",
"type": "string",
"format": ""
} ];

static getAttributeTypeMap() {
return DocumentUpdateRequestRecipients.attributeTypeMap;
}

public constructor() {
}
}

Loading