{
  "opencollection": "1.0.0",
  "info": {
    "name": "Xentral Account Offer API",
    "version": "v0.1"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Offer",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List offers V3",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers",
            "headers": [
              {
                "name": "x-pagination",
                "value": ""
              }
            ],
            "params": [
              {
                "name": "filter",
                "value": "",
                "type": "query",
                "description": "The filter parameter is used to filter the results of the given endpoint. \n\n\n**Supported filter operators by key:** \n\n`id`: *equals*, *notEquals*, *in*, *notIn* \n\n`documentNumber`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentDate`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`writeProtection`: *equals*, *notEquals* \n\n`address.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`project.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`tags`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`tags.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`language`: *equals*, *notEquals*, *in*, *notIn* \n\n`bodyIntroduction`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`bodyOutroduction`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`project.abbreviation`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`internalDesignation`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`vatId`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deliveryTerms`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`internalComment`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`isDocumentSent`: *equals*, *notEquals* \n\n`editor.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`createdAt`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals*, *isNull*, *isNotNull* \n\n`updatedAt`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals*, *isNull*, *isNotNull* \n\n`documentAddress.name`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.title`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.contactPerson`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.department`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.subDepartment`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.addressSupplement`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.street`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.zipCode`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.city`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.state`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.country`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.gln`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.email`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.phone`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`documentAddress.fax`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`financials.paymentMethod.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`financials.tax.disableTaxNotice`: *equals*, *notEquals* \n\n`financials.tax.taxRates.standard`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`financials.tax.taxRates.reduced`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`financials.tax.taxation`: *equals*, *notEquals*, *in*, *notIn* \n\n`totals.net.amount`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`totals.net.currency`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`financials.paymentTerms.paymentTargetDays`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`financials.paymentTerms.paymentTargetDiscount`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`financials.paymentTerms.paymentTargetDiscountDays`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`status`: *equals*, *notEquals*, *in*, *notIn* \n\n`sales.id`: *equals*, *notEquals*, *in*, *notIn* \n\n`costCenter`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`customerNumber`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.name`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.title`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.contactPerson`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.department`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.subDepartment`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.addressSupplement`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.street`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.zipCode`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.city`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.state`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.country`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.gln`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.email`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.phone`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`deviatingDeliveryAddress.fax`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`customerReference`: *equals*, *notEquals*, *in*, *notIn*, *contains*, *notContains*, *startsWith*, *endsWith* \n\n`desiredDeliveryDate`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`desiredDeliveryDateAsCalendarWeek`: *equals*, *notEquals* \n\n`validUntilDate`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`plannedOrderDate`: *equals*, *notEquals*, *lessThan*, *lessThanOrEquals*, *greaterThan*, *greaterThanOrEquals* \n\n`useAlternativeDocumentTitle`: *equals*, *notEquals* \n\n`manualShippingCostApproval`: *equals*, *notEquals* \n\n`printSettings.withoutLetterhead`: *equals*, *notEquals* \n\n`printSettings.withoutProductText`: *equals*, *notEquals* \n\n`printSettings.withoutTotalAmount`: *equals*, *notEquals* \n\n`shippingMethod.id`: *equals*, *notEquals*, *in*, *notIn*"
              },
              {
                "name": "sort",
                "value": "",
                "type": "query",
                "description": "Sort via id, -id, documentNumber, -documentNumber, documentDate, -documentDate, customerNumber, -customerNumber, documentAddress.country, -documentAddress.country, project.id, -project.id, createdAt, -createdAt, updatedAt and -updatedAt. Default sort is id"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "Full-text-style search across predefined columns."
              },
              {
                "name": "include",
                "value": "",
                "type": "query"
              },
              {
                "name": "perPage",
                "value": "",
                "type": "query",
                "description": "Number of items per page. Default: 15, Max: 1000"
              },
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "Page number. Only used with simple and table pagination."
              },
              {
                "name": "cursor",
                "value": "",
                "type": "query",
                "description": "The cursor to use for the paginated call. Only used with cursor pagination. Not compatible with page parameter"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:read`.\n\nList offers."
        },
        {
          "info": {
            "name": "🔒 Create offer V3",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers",
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint is currently in Beta and available for testing. It may contain bugs, and breaking changes can occur at any time without prior notice. We do not recommend using Beta endpoints in production environments. Should you choose to use it in production, you assume full responsibility for any resulting issues.\n\nThis endpoint requires the following scopes: `offer:create`.\n\nCreate an offer."
        },
        {
          "info": {
            "name": "View offer V3",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "include",
                "value": "",
                "type": "query"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:read`.\n\nView an offer.\n\n**Content Negotiation:** This endpoint supports additional response formats: `application/pdf`. Use the `Accept` header to request a specific format."
        },
        {
          "info": {
            "name": "🔒 Update offer V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint is currently in Beta and available for testing. It may contain bugs, and breaking changes can occur at any time without prior notice. We do not recommend using Beta endpoints in production environments. Should you choose to use it in production, you assume full responsibility for any resulting issues.\n\nThis endpoint requires the following scopes: `offer:update`.\n\nUpdate an offer."
        },
        {
          "info": {
            "name": "Delete offer V3",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:delete`.\n\nDelete an offer in status draft."
        },
        {
          "info": {
            "name": "Cancel offer V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/cancel",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:cancel`.\n\nCancel an offer. Offers in status draft or completed cannot be cancelled."
        },
        {
          "info": {
            "name": "Log custom offer activity V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/logActivity",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint requires the following scopes: `offer:update`.\n\nRecord a custom activity log entry for an offer."
        },
        {
          "info": {
            "name": "Release offer V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/release",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint requires the following scopes: `offer:release`.\n\nRelease an offer."
        },
        {
          "info": {
            "name": "Remove offer write protection V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/removeWriteProtection",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:removeWriteProtection`.\n\nRemove write protection from an offer."
        },
        {
          "info": {
            "name": "Send offer V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/send",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint requires the following scopes: `offer:send`.\n\nSend an offer."
        },
        {
          "info": {
            "name": "Set offer write protection V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/actions/setWriteProtection",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:setWriteProtection`.\n\nSet write protection for an offer."
        },
        {
          "info": {
            "name": "Attach file to offer V3",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/files",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint requires the following scopes: `offer:update`.\n\nAttach a file to an offer."
        },
        {
          "info": {
            "name": "Update file on offer V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/files/:fileId",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "fileId",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint requires the following scopes: `offer:update`.\n\nUpdate a file attached to an offer."
        },
        {
          "info": {
            "name": "Delete file from offer V3",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/files/:fileId",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "fileId",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:update`.\n\nDelete a file attached to an offer."
        },
        {
          "info": {
            "name": "🔒 Create offer line item V3",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/lineItems",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint is currently in Beta and available for testing. It may contain bugs, and breaking changes can occur at any time without prior notice. We do not recommend using Beta endpoints in production environments. Should you choose to use it in production, you assume full responsibility for any resulting issues.\n\nThis endpoint requires the following scopes: `offer:update`.\n\nCreate a new offer line item."
        },
        {
          "info": {
            "name": "View offer line item V3",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/lineItems/:lineItemId",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "lineItemId",
                "value": "",
                "type": "path"
              },
              {
                "name": "include",
                "value": "",
                "type": "query"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:read`.\n\nView a single offer line item."
        },
        {
          "info": {
            "name": "🔒 Update offer line item V3",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/lineItems/:lineItemId",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "lineItemId",
                "value": "",
                "type": "path"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "This endpoint is currently in Beta and available for testing. It may contain bugs, and breaking changes can occur at any time without prior notice. We do not recommend using Beta endpoints in production environments. Should you choose to use it in production, you assume full responsibility for any resulting issues.\n\nThis endpoint requires the following scopes: `offer:update`.\n\nUpdate a line item in an offer."
        },
        {
          "info": {
            "name": "Delete offer line item V3",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://{xentralId}.xentral.biz/api/v3/offers/:id/lineItems/:lineItemId",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path"
              },
              {
                "name": "lineItemId",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "This endpoint requires the following scopes: `offer:update`.\n\nDelete a line item of an offer."
        }
      ]
    }
  ],
  "bundled": true
}