Skip to content

Commit b996eef

Browse files
authored
v5.4.0 (#25)
- Add a new endpoint 'document move to folder'
1 parent 1b2b516 commit b996eef

File tree

11 files changed

+356
-3
lines changed

11 files changed

+356
-3
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ Class | Method | HTTP request | Description
7979
*DocumentsApi* | [**deleteDocument**](docs/DocumentsApi.md#deletedocument) | **DELETE** /public/v1/documents/{id} | Delete document by id
8080
*DocumentsApi* | [**deleteLinkedObject**](docs/DocumentsApi.md#deletelinkedobject) | **DELETE** /public/v1/documents/{id}/linked-objects/{linked_object_id} | Delete Linked Object
8181
*DocumentsApi* | [**detailsDocument**](docs/DocumentsApi.md#detailsdocument) | **GET** /public/v1/documents/{id}/details | Document details
82+
*DocumentsApi* | [**documentMoveToFolder**](docs/DocumentsApi.md#documentmovetofolder) | **DELETE** /public/v1/documents/{id}/move-to-folder/{folder_id} | Document move to folder
8283
*DocumentsApi* | [**downloadDocument**](docs/DocumentsApi.md#downloaddocument) | **GET** /public/v1/documents/{id}/download | Document download
8384
*DocumentsApi* | [**downloadProtectedDocument**](docs/DocumentsApi.md#downloadprotecteddocument) | **GET** /public/v1/documents/{id}/download-protected | Download document protected
8485
*DocumentsApi* | [**listDocuments**](docs/DocumentsApi.md#listdocuments) | **GET** /public/v1/documents | List documents

docs/DocumentsApi.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Method | HTTP request | Description
1111
[**deleteDocument**](DocumentsApi.md#deleteDocument) | **DELETE** /public/v1/documents/{id} | Delete document by id
1212
[**deleteLinkedObject**](DocumentsApi.md#deleteLinkedObject) | **DELETE** /public/v1/documents/{id}/linked-objects/{linked_object_id} | Delete Linked Object
1313
[**detailsDocument**](DocumentsApi.md#detailsDocument) | **GET** /public/v1/documents/{id}/details | Document details
14+
[**documentMoveToFolder**](DocumentsApi.md#documentMoveToFolder) | **DELETE** /public/v1/documents/{id}/move-to-folder/{folder_id} | Document move to folder
1415
[**downloadDocument**](DocumentsApi.md#downloadDocument) | **GET** /public/v1/documents/{id}/download | Document download
1516
[**downloadProtectedDocument**](DocumentsApi.md#downloadProtectedDocument) | **GET** /public/v1/documents/{id}/download-protected | Download document protected
1617
[**listDocuments**](DocumentsApi.md#listDocuments) | **GET** /public/v1/documents | List documents
@@ -572,6 +573,69 @@ Name | Type | Description | Notes
572573

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

576+
# **documentMoveToFolder**
577+
> void documentMoveToFolder()
578+
579+
580+
### Example
581+
582+
583+
```typescript
584+
import * as pd_api from 'pandadoc-node-client';
585+
586+
// replace it with your API key
587+
const API_KEY = "YOUR_API_KEY";
588+
const configuration = pd_api.createConfiguration(
589+
{ authMethods: {apiKey: `API-Key ${API_KEY}`} }
590+
);
591+
const apiInstance = new pd_api.DocumentsApi(configuration);
592+
593+
const body:pd_api.DocumentsApiDocumentMoveToFolderRequest = {
594+
// string | Specify document ID.
595+
id: "ZPeAfcpzr9aiVs5vqUf6jg",
596+
// string | Specify folder ID.
597+
folderId: "ZPeAfcpzr9aiVs5vqUf6jg",
598+
};
599+
600+
apiInstance.documentMoveToFolder(body).then((data) => {
601+
console.log('API called successfully. Returned data: %o', data);
602+
}).catch((error) => console.error(error));
603+
```
604+
605+
606+
### Parameters
607+
608+
Name | Type | Description | Notes
609+
------------- | ------------- | ------------- | -------------
610+
**id** | [**string**] | Specify document ID. | defaults to undefined
611+
**folderId** | [**string**] | Specify folder ID. | defaults to undefined
612+
613+
614+
### Return type
615+
616+
**void**
617+
618+
### Authorization
619+
620+
[apiKey](../README.md#apiKey), [oauth2](../README.md#oauth2)
621+
622+
### HTTP request headers
623+
624+
- **Content-Type**: Not defined
625+
- **Accept**: application/json
626+
627+
628+
### HTTP response details
629+
| Status code | Description | Response headers |
630+
|-------------|-------------|------------------|
631+
**204** | No content | - |
632+
**401** | Authentication error | - |
633+
**403** | Permission error | - |
634+
**404** | Not found | - |
635+
**429** | Too Many Requests | - |
636+
637+
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)
638+
575639
# **downloadDocument**
576640
> HttpFile downloadDocument()
577641

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "pandadoc-node-client",
3-
"version": "5.3.0",
3+
"version": "5.4.0",
44
"description": "The Official PandaDoc Node client SDK",
55
"author": "PandaDoc",
66
"keywords": [

src/apis/DocumentsApi.ts

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -411,6 +411,56 @@ export class DocumentsApiRequestFactory extends BaseAPIRequestFactory {
411411
return requestContext;
412412
}
413413

414+
/**
415+
* Document move to folder
416+
* @param id Specify document ID.
417+
* @param folderId Specify folder ID.
418+
*/
419+
public async documentMoveToFolder(id: string, folderId: string, _options?: Configuration): Promise<RequestContext> {
420+
let _config = _options || this.configuration;
421+
422+
// verify required parameter 'id' is not null or undefined
423+
if (id === null || id === undefined) {
424+
throw new RequiredError("DocumentsApi", "documentMoveToFolder", "id");
425+
}
426+
427+
428+
// verify required parameter 'folderId' is not null or undefined
429+
if (folderId === null || folderId === undefined) {
430+
throw new RequiredError("DocumentsApi", "documentMoveToFolder", "folderId");
431+
}
432+
433+
434+
// Path Params
435+
const localVarPath = '/public/v1/documents/{id}/move-to-folder/{folder_id}'
436+
.replace('{' + 'id' + '}', encodeURIComponent(String(id)))
437+
.replace('{' + 'folder_id' + '}', encodeURIComponent(String(folderId)));
438+
439+
// Make Request Context
440+
const requestContext = _config.baseServer.makeRequestContext(localVarPath, HttpMethod.DELETE);
441+
requestContext.setHeaderParam("Accept", "application/json, */*;q=0.8")
442+
443+
444+
let authMethod: SecurityAuthentication | undefined;
445+
// Apply auth methods
446+
authMethod = _config.authMethods["apiKey"]
447+
if (authMethod?.applySecurityAuthentication) {
448+
await authMethod?.applySecurityAuthentication(requestContext);
449+
}
450+
// Apply auth methods
451+
authMethod = _config.authMethods["oauth2"]
452+
if (authMethod?.applySecurityAuthentication) {
453+
await authMethod?.applySecurityAuthentication(requestContext);
454+
}
455+
456+
const defaultAuth: SecurityAuthentication | undefined = _options?.authMethods?.default || this.configuration?.authMethods?.default
457+
if (defaultAuth?.applySecurityAuthentication) {
458+
await defaultAuth?.applySecurityAuthentication(requestContext);
459+
}
460+
461+
return requestContext;
462+
}
463+
414464
/**
415465
* Document download
416466
* @param id Specify document ID.
@@ -1433,6 +1483,59 @@ export class DocumentsApiResponseProcessor {
14331483
throw new ApiException<string | Buffer | undefined>(response.httpStatusCode, "Unknown API Status Code!", await response.getBodyAsAny(), response.headers);
14341484
}
14351485

1486+
/**
1487+
* Unwraps the actual response sent by the server from the response context and deserializes the response content
1488+
* to the expected objects
1489+
*
1490+
* @params response Response returned by the server for a request to documentMoveToFolder
1491+
* @throws ApiException if the response code was not in [200, 299]
1492+
*/
1493+
public async documentMoveToFolder(response: ResponseContext): Promise<void > {
1494+
const contentType = ObjectSerializer.normalizeMediaType(response.headers["content-type"]);
1495+
if (isCodeInRange("204", response.httpStatusCode)) {
1496+
return;
1497+
}
1498+
if (isCodeInRange("401", response.httpStatusCode)) {
1499+
const body: any = ObjectSerializer.deserialize(
1500+
ObjectSerializer.parse(await response.body.text(), contentType),
1501+
"any", ""
1502+
) as any;
1503+
throw new ApiException<any>(401, "Authentication error", body, response.headers);
1504+
}
1505+
if (isCodeInRange("403", response.httpStatusCode)) {
1506+
const body: any = ObjectSerializer.deserialize(
1507+
ObjectSerializer.parse(await response.body.text(), contentType),
1508+
"any", ""
1509+
) as any;
1510+
throw new ApiException<any>(403, "Permission error", body, response.headers);
1511+
}
1512+
if (isCodeInRange("404", response.httpStatusCode)) {
1513+
const body: any = ObjectSerializer.deserialize(
1514+
ObjectSerializer.parse(await response.body.text(), contentType),
1515+
"any", ""
1516+
) as any;
1517+
throw new ApiException<any>(404, "Not found", body, response.headers);
1518+
}
1519+
if (isCodeInRange("429", response.httpStatusCode)) {
1520+
const body: any = ObjectSerializer.deserialize(
1521+
ObjectSerializer.parse(await response.body.text(), contentType),
1522+
"any", ""
1523+
) as any;
1524+
throw new ApiException<any>(429, "Too Many Requests", body, response.headers);
1525+
}
1526+
1527+
// Work around for missing responses in specification, e.g. for petstore.yaml
1528+
if (response.httpStatusCode >= 200 && response.httpStatusCode <= 299) {
1529+
const body: void = ObjectSerializer.deserialize(
1530+
ObjectSerializer.parse(await response.body.text(), contentType),
1531+
"void", ""
1532+
) as void;
1533+
return body;
1534+
}
1535+
1536+
throw new ApiException<string | Buffer | undefined>(response.httpStatusCode, "Unknown API Status Code!", await response.getBodyAsAny(), response.headers);
1537+
}
1538+
14361539
/**
14371540
* Unwraps the actual response sent by the server from the response context and deserializes the response content
14381541
* to the expected objects

src/http/http.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export type RequestBody = undefined | string | FormData | URLSearchParams;
5050
*/
5151
export class RequestContext {
5252
private headers: { [key: string]: string } = {
53-
"User-Agent": "pandadoc_node_client/5.3.0",
53+
"User-Agent": "pandadoc_node_client/5.4.0",
5454
};
5555
private body: RequestBody = undefined;
5656
private url: URLParse;

src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ export * from "./apis/exception";
77
export * from "./servers";
88

99
export { PromiseMiddleware as Middleware } from './middleware';
10-
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';
10+
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';
1111

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
/**
2+
* PandaDoc Public API
3+
* PandaDoc Public API documentation
4+
*
5+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
6+
* https://openapi-generator.tech
7+
* Do not edit the class manually.
8+
*/
9+
10+
import { DocumentCreateByTemplateRequestTokens } from './DocumentCreateByTemplateRequestTokens';
11+
import { DocumentUpdateRequestRecipients } from './DocumentUpdateRequestRecipients';
12+
import { PricingTableRequest } from './PricingTableRequest';
13+
import { HttpFile } from '../http/http';
14+
15+
export class DocumentUpdateRequest {
16+
/**
17+
* 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.
18+
*/
19+
'recipients'?: Array<DocumentUpdateRequestRecipients>;
20+
/**
21+
* You may pass a list of fields/values which exist in a document. Please use `Merge Field` property of the fields like the key.
22+
*/
23+
'fields'?: any;
24+
/**
25+
* 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.
26+
*/
27+
'tokens'?: Array<DocumentCreateByTemplateRequestTokens>;
28+
/**
29+
* 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.
30+
*/
31+
'metadata'?: any;
32+
'pricingTables'?: Array<PricingTableRequest>;
33+
34+
static readonly discriminator: string | undefined = undefined;
35+
36+
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
37+
{
38+
"name": "recipients",
39+
"baseName": "recipients",
40+
"type": "Array<DocumentUpdateRequestRecipients>",
41+
"format": ""
42+
},
43+
{
44+
"name": "fields",
45+
"baseName": "fields",
46+
"type": "any",
47+
"format": ""
48+
},
49+
{
50+
"name": "tokens",
51+
"baseName": "tokens",
52+
"type": "Array<DocumentCreateByTemplateRequestTokens>",
53+
"format": ""
54+
},
55+
{
56+
"name": "metadata",
57+
"baseName": "metadata",
58+
"type": "any",
59+
"format": ""
60+
},
61+
{
62+
"name": "pricingTables",
63+
"baseName": "pricing_tables",
64+
"type": "Array<PricingTableRequest>",
65+
"format": ""
66+
} ];
67+
68+
static getAttributeTypeMap() {
69+
return DocumentUpdateRequest.attributeTypeMap;
70+
}
71+
72+
public constructor() {
73+
}
74+
}
75+
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
/**
2+
* PandaDoc Public API
3+
* PandaDoc Public API documentation
4+
*
5+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
6+
* https://openapi-generator.tech
7+
* Do not edit the class manually.
8+
*/
9+
10+
import { HttpFile } from '../http/http';
11+
12+
export class DocumentUpdateRequestRecipients {
13+
'id'?: string;
14+
'email'?: string;
15+
'firstName'?: string;
16+
'lastName'?: string;
17+
18+
static readonly discriminator: string | undefined = undefined;
19+
20+
static readonly attributeTypeMap: Array<{name: string, baseName: string, type: string, format: string}> = [
21+
{
22+
"name": "id",
23+
"baseName": "id",
24+
"type": "string",
25+
"format": ""
26+
},
27+
{
28+
"name": "email",
29+
"baseName": "email",
30+
"type": "string",
31+
"format": ""
32+
},
33+
{
34+
"name": "firstName",
35+
"baseName": "first_name",
36+
"type": "string",
37+
"format": ""
38+
},
39+
{
40+
"name": "lastName",
41+
"baseName": "last_name",
42+
"type": "string",
43+
"format": ""
44+
} ];
45+
46+
static getAttributeTypeMap() {
47+
return DocumentUpdateRequestRecipients.attributeTypeMap;
48+
}
49+
50+
public constructor() {
51+
}
52+
}
53+

0 commit comments

Comments
 (0)