See Getting Started as a Developer for REST API for information on how to get started. 

openapi: "3.0.0" info: version: "1" title: Conga Contracts REST API description: servers: - url: https://app1.congacontracts.com/Contracts/rest/v1 - url: https://app1.novatuscontracts.com/Contracts/rest/v1 tags: - name: "Clause" - name: "Company" - name: "CompanyPerson" - name: "Contract" - name: "CreationTemplate" - name: "Document" - name: "DynamicForm" - name: "Event" - name: "ListAdmin" - name: "Payment" - name: "Person" - name: "Project" - name: "Request" - name: "Session" - name: "User" paths: /clause: get: tags: - "Clause" summary: Query clauses operationId: queryClauses parameters: - name: q in: query description: The NQL query to find clauses required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of clauses content: application/json: schema: $ref: "#/components/schemas/ClauseQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Clause" summary: Create clause operationId: createClause requestBody: content: application/json: schema: $ref: "#/components/schemas/Clause" responses: 200: description: The ID of the created clause content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Clause" summary: Update clause operationId: updateClause requestBody: content: application/json: schema: $ref: "#/components/schemas/Clause" responses: 200: description: The ID of the updated clause content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /clause/{id}: get: tags: - "Clause" summary: get clause by ID operationId: getClause parameters: - name: id in: path description: The clause ID to get required: true schema: type: string responses: 200: description: A clause content: application/json: schema: $ref: "#/components/schemas/Clause" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /clause/search: get: tags: - "Clause" summary: Search clauses operationId: searchClauses parameters: - name: q in: query description: The text to search for in clauses required: true schema: type: string responses: 200: description: A paged array of clauses content: application/json: schema: $ref: "#/components/schemas/ClauseQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company: put: tags: - "Company" summary: Update company operationId: updateCompany requestBody: content: application/json: schema: $ref: "#/components/schemas/Company" responses: 200: description: The ID of the updated company content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Company" summary: Create company operationId: createCompany requestBody: content: application/json: schema: $ref: "#/components/schemas/Company" responses: 200: description: The ID of the created company content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" get: tags: - "Company" summary: Query companies operationId: queryCompanies parameters: - name: q in: query description: The NQL query to find companies required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of companies content: application/json: schema: $ref: "#/components/schemas/CompanyQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company/{id}: get: tags: - "Company" summary: get company by ID operationId: getCompany parameters: - name: id in: path description: The company ID to get required: true schema: type: string responses: 200: description: A company content: application/json: schema: $ref: "#/components/schemas/Company" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company/{id}/relationships: get: tags: - "Company" summary: get company relationships by company ID operationId: getCompanyRelationships parameters: - name: id in: path description: The company ID to get relationships required: true schema: type: string responses: 200: description: An array of company relationships content: application/json: schema: type: array items: $ref: "#/components/schemas/CompanyRelationship" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Company" summary: save company relationships operationId: setCompanyRelationships parameters: - name: id in: path description: The company ID to set relationships required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/CompanyRelationship" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company/{id}/locations: get: tags: - "Company" summary: get company locations by company ID operationId: getCompanyLocations parameters: - name: id in: path description: The company ID to get locations required: true schema: type: string responses: 200: description: An array of company locations content: application/json: schema: type: array items: $ref: "#/components/schemas/Location" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Company" summary: save company locations operationId: setCompanyLocations parameters: - name: id in: path description: The company ID to set locations required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/Location" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company/{id}/additionalnames: get: tags: - "Company" summary: get company additional names by company ID operationId: getCompanyAdditionalNames parameters: - name: id in: path description: The company ID to get additional names required: true schema: type: string responses: 200: description: An array of company additional names content: application/json: schema: type: array items: $ref: "#/components/schemas/CompanyAdditionalName" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Company" summary: save company additional names operationId: setCompanyAdditionalNames parameters: - name: id in: path description: The company ID to set additional names required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/CompanyAdditionalName" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /company/{id}/additionalforms: get: tags: - "Company" summary: Get additional dynamic forms for a company operationId: getCompanyDynamicForms parameters: - name: id in: path description: The company ID to get additional forms required: true schema: type: string responses: 200: description: The additional forms on the company content: application/json: schema: type: array items: $ref: "#/components/schemas/DynamicForm" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /companyperson: put: tags: - "CompanyPerson" summary: Update company person operationId: updateCompanyPerson requestBody: content: application/json: schema: $ref: "#/components/schemas/CompanyPerson" responses: 200: description: The ID of the updated companyperson content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "CompanyPerson" summary: Create company person operationId: createCompanyPerson requestBody: content: application/json: schema: $ref: "#/components/schemas/CompanyPerson" responses: 200: description: The ID of the created company person content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" get: tags: - "CompanyPerson" summary: Query company persons operationId: queryCompanyPersons parameters: - name: q in: query description: The NQL query to find company persons required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of company persons content: application/json: schema: $ref: "#/components/schemas/CompanyPersonQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /companyperson/{id}: get: tags: - "CompanyPerson" summary: get company person by ID operationId: getCompanyPerson parameters: - name: id in: path description: The company person ID to get required: true schema: type: string responses: 200: description: A company person content: application/json: schema: $ref: "#/components/schemas/CompanyPerson" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract: put: tags: - "Contract" summary: Update contract operationId: updateContract requestBody: content: application/json: schema: $ref: "#/components/schemas/Contract" responses: 200: description: The ID of the updated contract content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Contract" summary: Create contract operationId: createContract requestBody: content: application/json: schema: $ref: "#/components/schemas/Contract" responses: 200: description: The ID of the created contract content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" get: tags: - "Contract" summary: Query contracts operationId: queryContracts parameters: - name: q in: query description: The NQL query to find contracts required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of contract content: application/json: schema: $ref: "#/components/schemas/ContractQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}: get: tags: - "Contract" summary: get contract by ID operationId: getContract parameters: - name: id in: path description: The contract ID to get required: true schema: type: string responses: 200: description: A contract content: application/json: schema: $ref: "#/components/schemas/Contract" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}/additionalparties: get: tags: - "Contract" summary: get contract additional parties by contract ID operationId: getContractAdditionalParties parameters: - name: id in: path description: The contract ID to get additional parties required: true schema: type: string responses: 200: description: An array of contract additional parties content: application/json: schema: type: array items: $ref: "#/components/schemas/AdditionalParty" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Contract" summary: save contract additional parties operationId: setContractAdditionalParties parameters: - name: id in: path description: The contract ID to set additional parties required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/AdditionalParty" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}/responsibilities: get: tags: - "Contract" summary: get contract responsibilities by contract ID operationId: getContractResponsibilities parameters: - name: id in: path description: The contract ID to get responsibilities required: true schema: type: string responses: 200: description: An array of contract responsibilities content: application/json: schema: type: array items: $ref: "#/components/schemas/ContractResponsibility" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Contract" summary: save contract responsibilities operationId: setContractResponsibilities parameters: - name: id in: path description: The contract ID to set responsibilities required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/ContractResponsibility" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}/locations: get: tags: - "Contract" summary: get contract locations by contract ID operationId: getContractLocations parameters: - name: id in: path description: The contract ID to get locations required: true schema: type: string responses: 200: description: An array of contract locations content: application/json: schema: type: array items: $ref: "#/components/schemas/ContractLocation" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Contract" summary: save contract locations operationId: setContractLocations parameters: - name: id in: path description: The contract ID to set locations required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/ContractLocation" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}/additionalforms: get: tags: - "Contract" summary: Get additional dynamic forms for a contract operationId: getContractDynamicForms parameters: - name: id in: path description: The contract ID to get additional forms required: true schema: type: string responses: 200: description: The additional forms on the contract content: application/json: schema: type: array items: $ref: "#/components/schemas/DynamicForm" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /contract/{id}/assignContract: get: tags: - "Contract" summary: Assign a contract to a different company operationId: assignContract parameters: - name: id in: path description: The contract id to reassign required: true schema: type: string responses: 200: description: the contract ID content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /creationtemplate/runsimpletemplate/{contractId}/{templateId}: post: tags: - "CreationTemplate" summary: Run a creation template operationId: runSimpleTemplate parameters: - name: contractId in: path description: The contract id to run the creation template on required: true schema: type: string - name: templateId in: path description: The creation template id to run required: true schema: type: string responses: 200: description: The document id of the created document content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /document: put: tags: - "Document" summary: Update document operationId: updateDocument requestBody: content: application/json: schema: $ref: "#/components/schemas/Document" responses: 200: description: The ID of the updated document content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Document" summary: Create document operationId: createDocument requestBody: content: multipart/form-data: schema: properties: document: $ref: "#/components/schemas/Document" contents: type: string format: binary responses: 200: description: The ID of the created document content: text/plain: schema: type: string default: description: error content: application/json: schema: $ref: "#/components/schemas/Error" get: tags: - "Document" summary: Query documents operationId: queryDocuments parameters: - name: q in: query description: The NQL query to find documents required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of document content: application/json: schema: $ref: "#/components/schemas/DocumentQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /document/{id}: get: tags: - "Document" summary: get document by ID operationId: getDocument parameters: - name: id in: path description: The document ID to get required: true schema: type: string responses: 200: description: A document content: application/json: schema: $ref: "#/components/schemas/Document" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /document/{id}/content: get: tags: - "Document" summary: Get the document content operationId: getDocumentContent parameters: - name: id in: path description: The document ID to get required: true schema: type: string responses: 200: description: A document content: application/octet-stream: schema: type: string format: binary default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /dynamicform: put: tags: - "DynamicForm" summary: Update dynamic form operationId: updateDynamicForm requestBody: content: application/json: schema: $ref: "#/components/schemas/DynamicForm" responses: 200: description: The ID of the updated dynamic form content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "DynamicForm" summary: Create dynamic form operationId: createDynamicForm requestBody: content: application/json: schema: $ref: "#/components/schemas/DynamicForm" responses: 200: description: The ID of the created dynamic form content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /dynamicform/{config}: get: tags: - "DynamicForm" summary: Query dynamic forms operationId: queryDynamicForms parameters: - name: config in: path description: The dynamic form configuration ID required: true schema: type: string - name: q in: query description: The NQL query to find dynamic forms required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of dynamic form content: application/json: schema: $ref: "#/components/schemas/DynamicFormQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /dynamicform/{config}/{id}: get: tags: - "DynamicForm" summary: get dynamic form by ID operationId: getDynamicForm parameters: - name: config in: path description: The dynamic form configuration ID required: true schema: type: string - name: id in: path description: The dynamic form ID to get required: true schema: type: string responses: 200: description: A dynamic form content: application/json: schema: $ref: "#/components/schemas/DynamicForm" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /event: get: tags: - "Event" summary: Query events operationId: queryEvents parameters: - name: q in: query description: The NQL query to find events required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of events content: application/json: schema: $ref: "#/components/schemas/EventQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Event" summary: Create event operationId: createEvent requestBody: content: application/json: schema: $ref: "#/components/schemas/Event" responses: 200: description: The ID of the created event content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Event" summary: Update event operationId: updateEvent requestBody: content: application/json: schema: $ref: "#/components/schemas/Event" responses: 200: description: The ID of the updated event content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /event/{id}: get: tags: - "Event" summary: get event by ID operationId: getEvent parameters: - name: id in: path description: The event ID to get required: true schema: type: string responses: 200: description: A event content: application/json: schema: $ref: "#/components/schemas/Event" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /listadmin/{group}/{name}: get: tags: - "ListAdmin" summary: Get a list admin list operationId: getList parameters: - name: group in: path description: the list group required: true schema: type: string - name: name in: path description: the list name required: true schema: type: string responses: 200: description: An array of list items content: application/json: schema: type: array items: $ref: "#/components/schemas/ListComboItem" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "ListAdmin" summary: Write a list admin list operationId: setList parameters: - name: group in: path description: the list group required: true schema: type: string - name: name in: path description: the list name required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/ListComboItem" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /payment: get: tags: - "Payment" summary: Query payments operationId: queryPayments parameters: - name: q in: query description: The NQL query to find payments required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of payments content: application/json: schema: $ref: "#/components/schemas/PaymentQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Payment" summary: Create payment operationId: createPayment requestBody: content: application/json: schema: $ref: "#/components/schemas/Payment" responses: 200: description: The ID of the created payment content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Payment" summary: Update payment operationId: updatePayment requestBody: content: application/json: schema: $ref: "#/components/schemas/Payment" responses: 200: description: The ID of the updated payment content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /payment/{id}: get: tags: - "Payment" summary: get payment by ID operationId: getPayment parameters: - name: id in: path description: The payment ID to get required: true schema: type: string responses: 200: description: A payment content: application/json: schema: $ref: "#/components/schemas/Payment" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /person: get: tags: - "Person" summary: Query persons operationId: queryPersons parameters: - name: q in: query description: The NQL query to find persons required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of persons content: application/json: schema: $ref: "#/components/schemas/PersonQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Person" summary: Create person operationId: createPerson requestBody: content: application/json: schema: $ref: "#/components/schemas/Person" responses: 200: description: The ID of the created person content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Person" summary: Update person operationId: updatePerson requestBody: content: application/json: schema: $ref: "#/components/schemas/Person" responses: 200: description: The ID of the updated person content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /person/{id}: get: tags: - "Person" summary: get person by ID operationId: getPerson parameters: - name: id in: path description: The person ID to get required: true schema: type: string responses: 200: description: A person content: application/json: schema: $ref: "#/components/schemas/Person" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /project: get: tags: - "Project" summary: Query projects operationId: queryProjects parameters: - name: q in: query description: The NQL query to find projects required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of projects content: application/json: schema: $ref: "#/components/schemas/ProjectQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "Project" summary: Create project operationId: createProject requestBody: content: application/json: schema: $ref: "#/components/schemas/Project" responses: 200: description: The ID of the created project content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Project" summary: Update project operationId: updateProject requestBody: content: application/json: schema: $ref: "#/components/schemas/Project" responses: 200: description: The ID of the updated project content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /project/{id}: get: tags: - "Project" summary: get project by ID operationId: getProject parameters: - name: id in: path description: The project ID to get required: true schema: type: string responses: 200: description: A project content: application/json: schema: $ref: "#/components/schemas/Project" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /project/{id}/menuitems: get: tags: - "Project" summary: get project menu by project ID operationId: getProjectMenu parameters: - name: id in: path description: The project ID to get menu required: true schema: type: string responses: 200: description: An array of project menu items content: application/json: schema: type: array items: $ref: "#/components/schemas/ProjectMenuItem" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Project" summary: save project menu operationId: setProjectMenu parameters: - name: id in: path description: The project ID to set menu items required: true schema: type: string requestBody: content: application/json: schema: type: array items: $ref: "#/components/schemas/ProjectMenuItem" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /project/{id}/additionalforms: get: tags: - "Project" summary: Get additional dynamic forms for a project operationId: getProjectDynamicForms parameters: - name: id in: path description: The project ID to get additional forms required: true schema: type: string responses: 200: description: The additional forms on the project content: application/json: schema: type: array items: $ref: "#/components/schemas/DynamicForm" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /request: post: tags: - "Request" summary: "Create a new request bundle" operationId: createRequest requestBody: content: application/json: schema: $ref: "#/components/schemas/RequestBundle" responses: 200: description: The ID of the created request bundle content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "Request" summary: "Update a request bundle" operationId: updateRequest requestBody: content: application/json: schema: $ref: "#/components/schemas/RequestBundle" responses: 200: description: The ID of the updated request bundle content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /request/draft: post: tags: - "Request" summary: "Create a new draft request bundle" operationId: createRequestDraft requestBody: content: application/json: schema: $ref: "#/components/schemas/RequestBundle" responses: 200: description: The ID of the created request bundle content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /request/requester/email: put: tags: - "Request" summary: "Update a request bundle requester by email address" operationId: updateRequesterByEmail requestBody: content: application/json: schema: $ref: "#/components/schemas/RequestBundle" responses: 200: description: The ID of the updated request bundle content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /request/requester/login: put: tags: - "Request" summary: "Update a request bundle requester by login name" operationId: updateRequesterByLogin requestBody: content: application/json: schema: $ref: "#/components/schemas/RequestBundle" responses: 200: description: The ID of the updated request bundle content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /request/document: post: tags: - "Request" summary: Create document suitable for inclusion into a request operationId: createRequestDocument requestBody: content: multipart/form-data: schema: properties: document: $ref: "#/components/schemas/Document" contents: type: string format: binary responses: 200: description: The ID of the document content: text/plain: schema: type: string default: description: error content: application/json: schema: $ref: "#/components/schemas/Error" /session: post: tags: - "Session" summary: Create a session operationId: createSession requestBody: required: true content: application/x-www-form-urlencoded: schema: properties: username: type: string password: type: string required: - username - password responses: 200: description: The ID of the session content: text/plain: schema: type: string default: description: error content: application/json: schema: $ref: "#/components/schemas/Error" /session/{id}/logout: get: tags: - "Session" summary: End a session parameters: - name: id description: The session ID to end in: path required: true schema: type: string operationId: logout responses: 200: description: The session was closed default: description: error content: application/json: schema: $ref: "#/components/schemas/Error" /user: get: tags: - "User" summary: Query users operationId: queryUsers parameters: - name: q in: query description: The NQL query to find users required: true schema: type: string - name: pageSize in: query description: The number of results to return per page required: true schema: type: integer - name: page in: query description: The (zero-indexed) page number to return required: true schema: type: integer responses: 200: description: A paged array of users content: application/json: schema: $ref: "#/components/schemas/UserQueryResult" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" post: tags: - "User" summary: Create user operationId: createUser requestBody: content: application/json: schema: $ref: "#/components/schemas/User" responses: 200: description: The ID of the created user content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "User" summary: Update user operationId: updateUser requestBody: content: application/json: schema: $ref: "#/components/schemas/User" responses: 200: description: The ID of the updated user content: text/plain: schema: type: string default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /user/{id}: get: tags: - "User" summary: get user by ID operationId: getUser parameters: - name: id in: path description: The user ID to get required: true schema: type: string responses: 200: description: A user content: application/json: schema: $ref: "#/components/schemas/User" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" /user/{id}/type: get: tags: - "User" summary: Get a user's type operationId: getUserType parameters: - name: id in: path description: The user ID to get type for required: true schema: type: string responses: 200: description: A user type content: application/json: schema: $ref: "#/components/schemas/UserType" default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" put: tags: - "User" summary: Set a user's type operationId: setUserType parameters: - name: id in: path description: The user ID to set type for required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/UserType" responses: 200: description: Success default: description: unexpected error content: application/json: schema: $ref: "#/components/schemas/Error" components: schemas: AdditionalParty: properties: company: $ref: "#/components/schemas/Company" notes: type: string effectiveDate: type: integer format: int64 expirationDate: type: integer format: int64 ClauseQueryResult: properties: clauseList: type: array items: $ref: "#/components/schemas/Clause" totalCount: type: integer format: int64 CompanyPersonQueryResult: properties: companyPersonList: type: array items: $ref: "#/components/schemas/CompanyPerson" totalCount: type: integer format: int64 CompanyQueryResult: properties: companyList: type: array items: $ref: "#/components/schemas/Company" totalCount: type: integer format: int64 ContractQueryResult: properties: contractList: type: array items: $ref: "#/components/schemas/Contract" totalCount: type: integer format: int64 DocumentQueryResult: properties: documentList: type: array items: $ref: "#/components/schemas/Document" totalCount: type: integer format: int64 DynamicFormQueryResult: properties: formList: type: array items: $ref: "#/components/schemas/DynamicForm" totalCount: type: integer format: int64 EventQueryResult: properties: eventList: type: array items: $ref: "#/components/schemas/Event" totalCount: type: integer format: int64 PaymentQueryResult: properties: paymentList: type: array items: $ref: "#/components/schemas/Payment" totalCount: type: integer format: int64 PersonQueryResult: properties: personList: type: array items: $ref: "#/components/schemas/Person" totalCount: type: integer format: int64 ProjectQueryResult: properties: projectList: type: array items: $ref: "#/components/schemas/Project" totalCount: type: integer format: int64 UserQueryResult: properties: userList: type: array items: $ref: "#/components/schemas/User" totalCount: type: integer format: int64 Clause: properties: id: type: string familyId: type: string revision: type: integer name: type: string description: type: string category: type: string type: type: string text: type: string createdOn: type: integer format: int64 lastUpdatedOn: type: integer format: int64 createdBy: type: string lastUpdatedBy: type: string deleted: type: boolean securityId: type: string securityLevel: type: integer securityName: type: string securityDescription: type: string clauseGroupName: type: string isLatestRevision: type: boolean Company: type: object properties: id: type: string name: type: string number: type: string group: type: string taxId: type: string status: type: string dunsNumber: type: string type: type: string category: type: string url: type: string address1: type: string address2: type: string city: type: string state: type: string postalCode: type: string country: type: string phoneAreaCode: type: string phoneCountryCode: type: string phoneExtension: type: string phoneNumber: type: string faxAreaCode: type: string faxCountryCode: type: string faxExtension: type: string faxNumber: type: string dynamics: type: array items: type: object additionalProperties: type: object CompanyAdditionalName: properties: id: type: string additionalName: type: string type: type: string effectiveDate: type: integer format: int64 CompanyPerson: properties: company: $ref: "#/components/schemas/Company" companyId: type: string functions: type: array items: type: string id: type: string prefix: type: string firstName: type: string middleName: type: string lastName: type: string title: type: string addressLine1: type: string addressLine2: type: string mailStop: type: string city: type: string state: type: string postalCode: type: string country: type: string emailAddress: type: string workCountryCode: type: string workAreaCode: type: string workNumber: type: string workExtension: type: string cellCountryCode: type: string cellAreaCode: type: string cellNumber: type: string cellExtension: type: string homeCountryCode: type: string homeAreaCode: type: string homeNumber: type: string homeExtension: type: string faxCountryCode: type: string faxAreaCode: type: string faxNumber: type: string faxExtension: type: string notes: type: string organization: type: string CompanyRelationship: properties: id: type: string relatedCompanyId: type: string relationshipType: type: string notes: type: string Contract: type: object properties: company: $ref: "#/components/schemas/Company" id: type: string group: type: string number: type: string value: type: number format: double agreementType: type: string proposedValue: type: number format: double types: type: array items: type: string location: type: string purpose: type: string legalEntity: type: string originalExpirationDate: type: integer format: int64 effectiveDate: type: integer format: int64 currentExpirationDate: type: integer format: int64 noticeDate: type: integer format: int64 renewalInterval: type: integer format: int32 noticePeriod: type: integer format: int32 termType: type: string status: type: string currency: type: string parentContractId: type: string originalCompany: type: string description: type: string familyId: type: string dynamics: type: array items: type: object additionalProperties: type: object ContractLocation: properties: id: type: string companyLocationId: type: string attentionTo: type: string notes: type: string attnEmail: type: string attnPhoneCountryCode: type: string attnPhoneAreaCode: type: string attnPhoneNumber: type: string attnPhoneExtension: type: string attnFaxCountryCode: type: string attnFaxAreaCode: type: string attnFaxNumber: type: string attnFaxExtension: type: string addressType: type: string ContractResponsibility: properties: responsibilityName: type: string personId: type: string Document: properties: id: type: string type: type: string familyId: type: string revisionNumber: type: integer format: int32 fileName: type: string fileType: type: string fileSize: type: integer format: int32 author: type: string description: type: string effectiveDate: type: integer format: int64 expirationDate: type: integer format: int64 objects: type: array items: type: string createdOn: type: integer format: int64 lastUpdatedOn: type: integer format: int64 createdBy: type: string lastUpdatedBy: type: string DynamicForm: type: object properties: id: type: string configId: type: string objectId: type: string dynamics: type: array items: type: object additionalProperties: type: object Event: properties: id: type: string objectId: type: string name: type: string column: type: string description: type: string ownerId: type: string status: type: string date: type: integer format: int64 warnDays: type: integer format: int32 frequencyType: type: string frequency: type: integer format: int32 endDate: type: integer format: int64 notificationIds: type: array items: type: string notificationMessage: type: string documentIds: type: array items: type: string reminder: type: boolean reminderDays: type: integer format: int32 reminderIds: type: array items: type: string reminderMessage: type: string ListComboItem: properties: id: type: string name: type: string description: type: string treeItems: type: array items: $ref: "#/components/schemas/ListComboItem" Location: properties: id: type: string name: type: string state: type: string addressLine1: type: string addressLine2: type: string city: type: string postalCode: type: string country: type: string webAddress: type: string phnoeCountryCode: type: string phoneAreaCode: type: string phoneNumber: type: string phoneExtension: type: string faxCountryCode: type: string faxAreaCode: type: string faxNumber: type: string faxExtension: type: string type: type: string Payment: properties: id: type: string invoiceNumber: type: string invoiceDate: type: integer format: int64 invoiceDueDate: type: integer format: int64 paidDate: type: integer format: int64 paidAmount: type: number format: double referenceNumber: type: string transactionId: type: string notes: type: string streamType: type: integer format: int32 streamId: type: string contractId: type: string streamName: type: string Person: properties: functions: type: array items: type: string type: type: string id: type: string prefix: type: string firstName: type: string middleName: type: string lastName: type: string title: type: string addressLine1: type: string addressLine2: type: string mailStop: type: string city: type: string state: type: string postalCode: type: string country: type: string emailAddress: type: string workCountryCode: type: string workAreaCode: type: string workNumber: type: string workExtension: type: string cellCountryCode: type: string cellAreaCode: type: string cellNumber: type: string cellExtension: type: string homeCountryCode: type: string homeAreaCode: type: string homeNumber: type: string homeExtension: type: string faxCountryCode: type: string faxAreaCode: type: string faxNumber: type: string faxExtension: type: string notes: type: string organization: type: string Project: type: object properties: id: type: string name: type: string description: type: string status: type: string group: type: string type: type: string startDate: type: integer format: int64 endDate: type: integer format: int64 teamMembers: type: array items: $ref: "#/components/schemas/ProjectTeamMember" dynamics: type: array items: type: object additionalProperties: type: object ProjectMenuItem: properties: nodeId: type: string parentId: type: string orderIndex: type: string objectId: type: string objectType: type: string folderName: type: string ProjectTeamMember: properties: user: $ref: "#/components/schemas/User" modify: type: boolean documents: type: boolean documentUpload: type: boolean Request: properties: id: type: string requestConfigName: type: string company: $ref: "#/components/schemas/Company" contract: $ref: "#/components/schemas/Contract" responsibilities: type: array items: $ref: "#/components/schemas/ContractResponsibility" dynamicForms: type: array items: $ref: "#/components/schemas/DynamicForm" requestDocuments: type: array items: type: string RequestBundle: properties: id: type: string requests: type: array items: $ref: "#/components/schemas/Request" requestBundleConfigName: type: string companyId: type: string companyName: type: string requesterName: type: string requesterEmail: type: string User: properties: roles: type: array items: type: string functions: type: array items: type: string loginName: type: string password: type: string forcePasswordChange: type: boolean disabled: type: boolean id: type: string personId: type: string prefix: type: string firstName: type: string middleName: type: string lastName: type: string title: type: string addressLine1: type: string addressLine2: type: string mailStop: type: string city: type: string state: type: string postalCode: type: string country: type: string emailAddress: type: string workCountryCode: type: string workAreaCode: type: string workNumber: type: string workExtension: type: string cellCountryCode: type: string cellAreaCode: type: string cellNumber: type: string cellExtension: type: string homeCountryCode: type: string homeAreaCode: type: string homeNumber: type: string homeExtension: type: string faxCountryCode: type: string faxAreaCode: type: string faxNumber: type: string faxExtension: type: string notes: type: string organization: type: string UserType: properties: type: type: string Error: required: - errorMessage - exceptionClass properties: errorMessage: type: string exceptionClass: type: string