# Picking (Operations)

These endpoints support the management of the picking process.

## List load units

> List load units

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnits":{"properties":{"loadUnits":{"description":"found load units matching the search parameters","items":{"$ref":"#/components/schemas/LoadUnit"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"required":["loadUnits","total"],"title":"LoadUnits","type":"object","description":"LoadUnits"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits":{"get":{"deprecated":false,"description":"List load units","operationId":"getAllLoadUnits","parameters":[{"description":"all entities after given Id","in":"query","name":"startAfterId","required":false,"schema":{"type":"string"}},{"description":"number of loadUnits to show","in":"query","name":"size","required":false,"schema":{"default":25,"type":"integer"}},{"description":"query load units with the given pickJobRef","in":"query","name":"pickJobRef","required":false,"schema":{"type":"string"}},{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnits"}}},"description":"Load units are found"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List load units","tags":["Picking (Operations)"]}}}}
```

## Create load units

> Create load units

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitsForCreation":{"properties":{"loadUnits":{"items":{"$ref":"#/components/schemas/LoadUnitForCreation"},"maxItems":100,"minItems":1,"type":"array"}},"required":["loadUnits"],"title":"LoadUnitsForCreation","type":"object","description":"LoadUnitsForCreation"},"LoadUnitForCreation":{"properties":{"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItemForCreation"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array"},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"}},"required":["pickJobRefs"],"title":"LoadUnitForCreation","type":"object","description":"LoadUnitForCreation"},"LoadUnitLineItemForCreation":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["article"],"title":"LoadUnitLineItemForCreation","type":"object","description":"LoadUnitLineItemForCreation"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits":{"post":{"deprecated":false,"description":"Create load units","operationId":"addLoadUnit","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitsForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/LoadUnit"},"type":"array"}}},"description":"Load units are successfully created."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"Create load units","tags":["Picking (Operations)"]}}}}
```

## Delete load units

> Delete load units

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnits":{"properties":{"loadUnits":{"description":"found load units matching the search parameters","items":{"$ref":"#/components/schemas/LoadUnit"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"required":["loadUnits","total"],"title":"LoadUnits","type":"object","description":"LoadUnits"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits":{"delete":{"deprecated":false,"description":"Delete load units","operationId":"deleteLoadUnits","parameters":[{"description":"Reference to the pickJob of which you want to delete the loadUnits","in":"query","name":"pickJobRef","required":false,"schema":{"type":"string"}},{"description":"Load unit ids","explode":true,"in":"query","name":"id","required":false,"schema":{"items":{"type":"string"},"type":"array"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnits"}}},"description":"Load units are successfully deleted."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The syntax of the request content was correct, but it was unable to process the contained instructions, possibly due to semantic errors."}},"summary":"Delete load units","tags":["Picking (Operations)"]}}}}
```

## Get load unit

> Get load unit

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits/{loadUnitId}":{"get":{"deprecated":false,"description":"Get load unit","operationId":"getLoadUnitByID","parameters":[{"in":"path","name":"loadUnitId","required":true,"schema":{"type":"string"}},{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnit"}}},"description":""},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Get load unit","tags":["Picking (Operations)"]}}}}
```

## Delete load unit

> Delete load unit

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits/{loadUnitId}":{"delete":{"deprecated":false,"description":"Delete load unit","operationId":"deleteLoadUnit","parameters":[{"in":"path","name":"loadUnitId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnit"}}},"description":"Successfully deleted load unit."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Delete load unit","tags":["Picking (Operations)"]}}}}
```

## Update load unit.

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />LoadUnitPatchActions: Deprecated - For future usage please use the /actions endpoints mentioned in the corresponding - PatchActions  LoadUnit: Partial Patch on this entity.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitPatchActions":{"properties":{"actions":{"items":{"$ref":"#/components/schemas/ReplaceLoadUnitLineItems"},"maxItems":100,"minItems":1,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["actions","version"],"title":"LoadUnitPatchActions","type":"object","description":"LoadUnitPatchActions"},"ReplaceLoadUnitLineItems":{"properties":{"action":{"description":"Use value 'ReplaceLoadUnitLineItems', because you want to replace load unit line items","enum":["ReplaceLoadUnitLineItems"],"type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"}},"required":["action","loadUnitLineItems"],"title":"ReplaceLoadUnitLineItems","type":"object","description":"ReplaceLoadUnitLineItems"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits/{loadUnitId}":{"patch":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />LoadUnitPatchActions: Deprecated - For future usage please use the /actions endpoints mentioned in the corresponding - PatchActions  LoadUnit: Partial Patch on this entity.","operationId":"patchLoadUnitByID","parameters":[{"in":"path","name":"loadUnitId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/LoadUnitPatchActions"},{"$ref":"#/components/schemas/LoadUnit"}]}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnit"}}},"description":"The updated load unit"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update load unit.","tags":["Picking (Operations)"]}}}}
```

## Applies actions to a load unit. Check LoadUnitActionsParameter for available actions.

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Applies actions to a load unit. Check LoadUnitActionsParameter for available actions.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitLineItemUpdateRecordableAttributesActionParameter":{"properties":{"name":{"description":"Update the recordable attributes of the line items of a load unit","type":"string"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttributeForUpdate"},"maxItems":100,"type":"array"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version","recordableAttributes"],"title":"LoadUnitLineItemUpdateRecordableAttributesActionParameter","type":"object","description":"LoadUnitLineItemUpdateRecordableAttributesActionParameter"},"RecordableAttributeForUpdate":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute to set","minLength":1,"nullable":true,"type":"string"},"recordableAttributeId":{"description":"id of the recordable attribute to update","type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute to set","nullable":true,"type":"string"}},"required":["recordableAttributeId"],"title":"RecordableAttributeForUpdate","type":"object","description":"RecordableAttributeForUpdate"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits/{loadUnitId}/actions":{"post":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Applies actions to a load unit. Check LoadUnitActionsParameter for available actions.","operationId":"loadUnitActions","parameters":[{"in":"path","name":"loadUnitId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/LoadUnitLineItemUpdateRecordableAttributesActionParameter"}]}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnit"}}},"description":"Updated Load Unit via actions"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Applies actions to a load unit. Check LoadUnitActionsParameter for available actions.","tags":["Picking (Operations)"]}}}}
```

## Get load unit stack

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Get load unit stack

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Stack":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"facilityRefs":{"description":"Linked Facilities through reference","items":{"type":"string"},"maxItems":50,"type":"array"},"id":{"description":"Unique identifier of the Stack","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"processRefs":{"description":"Linked Processes through reference","items":{"type":"string"},"maxItems":50,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["created","lastModified","version","id","facilityRefs","processRefs"],"title":"Stack","type":"object","description":"Stack"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunits/{loadUnitId}/stack":{"get":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Get load unit stack","operationId":"getStackForLoadUnit","parameters":[{"in":"path","name":"loadUnitId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Stack"}}},"description":"The found stack for this load unit."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Get load unit stack","tags":["Picking (Operations)"]}}}}
```

## List load unit types

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Return all load unit types configured. Deprecated, please use OperativeContainerTypes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"iconUrl":{"type":"string"},"id":{"type":"string"},"lastModified":{"description":"Creation timestamp","format":"date-time","type":"string"},"name":{"type":"string"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"version":{"type":"number"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","version","nameLocalized"],"title":"LoadUnitType","type":"object","description":"LoadUnitType"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunittypes":{"get":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Return all load unit types configured. Deprecated, please use OperativeContainerTypes","operationId":"getLoadUnitTypes","parameters":[{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}},{"description":"all entities after given Id","in":"query","name":"startAfterId","required":false,"schema":{"type":"string"}},{"description":"number of entities to show","in":"query","name":"size","required":false,"schema":{"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/LoadUnitType"},"type":"array"}}},"description":"All load unit types"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"List load unit types","tags":["Picking (Operations)"]}}}}
```

## Create load unit type

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Create load unit type. Deprecated, please use OperativeContainerTypes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitTypeForCreation":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"icon":{"$ref":"#/components/schemas/NamedFile"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["nameLocalized"],"title":"LoadUnitTypeForCreation","type":"object","description":"LoadUnitTypeForCreation"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"NamedFile":{"additionalProperties":false,"properties":{"content":{"description":"File content base64 encoded","type":"string"},"name":{"description":"File name with extension","type":"string"}},"required":["name","content"],"type":"object","xml":{"name":"NamedFile"},"title":"NamedFile","description":"NamedFile"},"LoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"iconUrl":{"type":"string"},"id":{"type":"string"},"lastModified":{"description":"Creation timestamp","format":"date-time","type":"string"},"name":{"type":"string"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"version":{"type":"number"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","version","nameLocalized"],"title":"LoadUnitType","type":"object","description":"LoadUnitType"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunittypes":{"post":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Create load unit type. Deprecated, please use OperativeContainerTypes","operationId":"createLoadUnitTypes","parameters":[{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitTypeForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitType"}}},"description":"Successfully created resource."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"Create load unit type","tags":["Picking (Operations)"]}}}}
```

## Get load unit type

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Get load unit type. Deprecated, please use OperativeContainerTypes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"iconUrl":{"type":"string"},"id":{"type":"string"},"lastModified":{"description":"Creation timestamp","format":"date-time","type":"string"},"name":{"type":"string"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"version":{"type":"number"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","version","nameLocalized"],"title":"LoadUnitType","type":"object","description":"LoadUnitType"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunittypes/{loadUnitTypeId}":{"get":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Get load unit type. Deprecated, please use OperativeContainerTypes","operationId":"getLoadUnitTypeByID","parameters":[{"in":"path","name":"loadUnitTypeId","required":true,"schema":{"type":"string"}},{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitType"}}},"description":"The found load unit type."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Get load unit type","tags":["Picking (Operations)"]}}}}
```

## Update load unit type

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Update load unit type. Deprecated, please use OperativeContainerTypes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnitTypePatchActions":{"properties":{"actions":{"items":{"$ref":"#/components/schemas/ModifyLoadUnitType"},"minItems":1,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["version","actions"],"title":"LoadUnitTypePatchActions","type":"object","description":"LoadUnitTypePatchActions"},"ModifyLoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"action":{"description":"Use value, because you want to modify a LoadUnitType","enum":["ModifyLoadUnitType"],"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["action"],"title":"ModifyLoadUnitType","type":"object","description":"ModifyLoadUnitType"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"iconUrl":{"type":"string"},"id":{"type":"string"},"lastModified":{"description":"Creation timestamp","format":"date-time","type":"string"},"name":{"type":"string"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"version":{"type":"number"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","version","nameLocalized"],"title":"LoadUnitType","type":"object","description":"LoadUnitType"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunittypes/{loadUnitTypeId}":{"patch":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Update load unit type. Deprecated, please use OperativeContainerTypes","operationId":"updateLoadUnitType","parameters":[{"in":"path","name":"loadUnitTypeId","required":true,"schema":{"type":"string"}},{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitTypePatchActions"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitType"}}},"description":"Load Unit Type updated successfully."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update load unit type","tags":["Picking (Operations)"]}}}}
```

## Update load unit type icon

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Update load unit type icon. Deprecated, please use OperativeContainerTypes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"NamedFile":{"additionalProperties":false,"properties":{"content":{"description":"File content base64 encoded","type":"string"},"name":{"description":"File name with extension","type":"string"}},"required":["name","content"],"type":"object","xml":{"name":"NamedFile"},"title":"NamedFile","description":"NamedFile"},"LoadUnitType":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"iconUrl":{"type":"string"},"id":{"type":"string"},"lastModified":{"description":"Creation timestamp","format":"date-time","type":"string"},"name":{"type":"string"},"priority":{"description":"This value gives the priority in the respective loadUnitType. The lower the value the higher is the priority, e.g. priority 1 is higher than priority 10. The priority can be used to order loadUnityTypes","format":"int64","maximum":10000,"minimum":1,"type":"integer"},"version":{"type":"number"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","version","nameLocalized"],"title":"LoadUnitType","type":"object","description":"LoadUnitType"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/loadunittypes/{loadUnitTypeId}/icon":{"put":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Update load unit type icon. Deprecated, please use OperativeContainerTypes","operationId":"uploadLoadUnitTypeIcon","parameters":[{"in":"path","name":"loadUnitTypeId","required":true,"schema":{"type":"string"}},{"description":"Provide the localized names and descriptions if found. If not provided the default locale is used. Example de_DE","in":"query","name":"locale","required":false,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NamedFile"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitType"}}},"description":"Successfully updated load unit type icon"},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnitType"}}},"description":"Successfully created load unit type icon."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update load unit type icon","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickjobs

> List pick jobs

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"StrippedPickJobs":{"properties":{"pickjobs":{"items":{"$ref":"#/components/schemas/StrippedPickJob"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"type":"object","title":"StrippedPickJobs","description":"StrippedPickJobs"},"StrippedPickJob":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"carrierKey":{"type":"string"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"id":{"type":"string"},"orderRef":{"description":"The id of the order that lead to the creation of this pickjob. Can be empty / not present when the pickjob was created without having an order.","type":"string"},"searchPaths":{"items":{"type":"string"},"minItems":0,"type":"array"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"}},"required":["id","status","created","lastModified","version"],"type":"object"}],"title":"StrippedPickJob","description":"StrippedPickJob"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs":{"get":{"operationId":"queryPickJobs","parameters":[{"description":"Search term you want to get the corresponding pickjobs. Search will be performed on multiple fields, like tenantOrderId, consumerName, tenantArticleId and more","in":"query","name":"searchTerm","required":false,"schema":{"type":"string"}},{"description":"Reference to the carrier you want to get the corresponding pickjobs","explode":false,"in":"query","name":"carrierKeys","required":false,"schema":{"items":{"maxItems":100,"type":"string"},"type":"array"}},{"description":"Reference to the orderDate you want to get the corresponding pickjobs","in":"query","name":"startOrderDate","required":false,"schema":{"type":"string"}},{"description":"Reference to the orderDate you want to get the corresponding pickjobs","in":"query","name":"endOrderDate","required":false,"schema":{"type":"string"}},{"description":"Reference to the order you want to get the corresponding pickjobs","in":"query","name":"orderRef","required":false,"schema":{"type":"string"}},{"description":"Reference to the facility you want to get the corresponding pickjobs","in":"query","name":"facilityRef","required":false,"schema":{"type":"string"}},{"description":"Reference the assigned user on this entity - id or username","in":"query","name":"assignedUser","required":false,"schema":{"type":"string"}},{"description":"Reference to the status you want to get the corresponding pickjobs","explode":false,"in":"query","name":"status","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Reference to the zones you want to get the corresponding pickjobs","explode":false,"in":"query","name":"zoneRefs","required":false,"schema":{"items":{"type":"string"},"type":"array"}},{"description":"Reference to the tenantOrderId you want to get the corresponding pickjobs","in":"query","name":"tenantOrderId","required":false,"schema":{"type":"string"}},{"description":"The channel of the pickJob you want to filter by","in":"query","name":"channel","required":false,"schema":{"enum":["COLLECT","SHIPPING"],"type":"string"}},{"description":"Reference to the consumer name you want to get the corresponding pickjobs","in":"query","name":"consumerName","required":false,"schema":{"type":"string"}},{"description":"Reference to the shortId you want to get the corresponding pickjobs","in":"query","name":"shortId","required":false,"schema":{"type":"string"}},{"description":"Reference to the articleTitle you want to get the corresponding pickjobs","in":"query","name":"articleTitle","required":false,"schema":{"type":"string"}},{"description":"Reference to the anonymized you want to get the corresponding pickjobs","in":"query","name":"anonymized","required":false,"schema":{"type":"boolean"}},{"description":"all entities after given Id","in":"query","name":"startAfterId","required":false,"schema":{"type":"string"}},{"description":"number of entities to show","in":"query","name":"size","required":false,"schema":{"default":25,"type":"integer"}},{"description":"query pickjobs orderBy","in":"query","name":"orderBy","required":false,"schema":{"type":"string"}},{"description":"Start date range for pick jobs","in":"query","name":"startTargetTime","required":false,"schema":{"format":"date-time","type":"string"}},{"description":"End date range for pick jobs","in":"query","name":"endTargetTime","required":false,"schema":{"format":"date-time","type":"string"}},{"description":"Reference to pickjobs","explode":false,"in":"query","name":"pickJobRefs","required":false,"schema":{"items":{"maxItems":100,"type":"string"},"type":"array"}},{"description":"Reference to the user ID you want to get the corresponding pickjobs","in":"query","name":"modifiedByUsername","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrippedPickJobs"}}},"description":"PickJobs were found. The results are in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"List pick jobs","tags":["Picking (Operations)"]}}}}
```

## POST /api/pickjobs

> Create pick job

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickJobForCreation":{"additionalProperties":false,"properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"customAttributes":{"description":"Attributes that can be added to the pickjob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},"minItems":0,"type":"array"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"operativeProcessRef":{"type":"string"},"orderDate":{"description":"The date this order was created at the supplying system.","format":"date-time","type":"string"},"orderRef":{"description":"The id of the order reference. The given ID has to be present in the system.","type":"string"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"pickingTimes":{"$ref":"#/components/schemas/PickJobPickingTimes"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItemForCreation"},"minItems":0,"type":"array"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"processId":{"description":"Id of the global process related to this entity. For example used for starting the GDPR process and others.","type":"string"},"routingPlanRef":{"description":"Reference to the routingplan which created this pickjob","type":"string"},"shortId":{"description":"A short identifier that helps assigning a pick job to a customer.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"minItems":0,"type":"array"},"tenantOrderId":{"description":"Field can be used as a reference number in foreign systems, for example as a reference to the source system's identifier for this order.","type":"string"},"transfers":{"items":{"$ref":"#/components/schemas/OperativeTransfer"},"minItems":0,"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"description":"Tags can only be set when there is no process related with this pickJob. Setting processId and tags will lead to an validationError.","items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["orderDate","facilityRef","pickLineItems"],"type":"object","xml":{"name":"Pickjob"},"title":"PickJobForCreation","description":"PickJobForCreation"},"AssignedUserForCreationByName":{"description":"Create a assigned user by giving a valid name","properties":{"username":{"description":"username of the user should be assigned","type":"string"}},"required":["username"],"title":"AssignedUserForCreationByName","type":"object"},"AssignedUserForCreationById":{"description":"Create a assigned user by giving a valid id","properties":{"userId":{"description":"userId of the user should be assigned","type":"string"}},"required":["userId"],"title":"AssignedUserForCreationById","type":"object"},"PickjobDeliveryInformationForCreation":{"properties":{"channel":{"enum":["COLLECT","SHIPPING"],"type":"string"},"details":{"properties":{"collect":{"properties":{"identifier":{"description":"Includes information about Click & Collect recipient","type":"string"},"paid":{"default":false,"description":"Indicates if the order is already paid.","type":"boolean"}},"type":"object"},"shipping":{"properties":{"carrierKey":{"type":"string"},"carrierProduct":{"description":"Desired product of given carrier to choose when ordering a label, this is specific to a carrier","type":"string"},"carrierProductCategory":{"$ref":"#/components/schemas/CarrierProductCategory"},"carrierServices":{"items":{"$ref":"#/components/schemas/CarrierServices"},"type":"array"},"identifier":{"description":"Includes information on how to identify Ship from Store recipient (Name, PIN, Reference number, ...)","type":"string"},"invoiceAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"postalAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"recipientaddress":{"$ref":"#/components/schemas/ConsumerAddress"},"serviceLevel":{"description":"TBD","enum":["DELIVERY","SAMEDAY"],"type":"string"}},"type":"object"}},"type":"object"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"},"targetTimeBaseDate":{"description":"The start date for the targetTime calculation.","format":"date-time","type":"string"}},"type":"object","title":"PickjobDeliveryInformationForCreation","description":"PickjobDeliveryInformationForCreation"},"CarrierProductCategory":{"enum":["STANDARD","EXPRESS","VALUE","FORWARDING"],"type":"string","title":"CarrierProductCategory","description":"CarrierProductCategory"},"CarrierServices":{"enum":["SIGNATURE","CUSTOMER_SIGNATURE","ADULT_SIGNATURE","SATURDAY_DELIVERY","IDENTITY_CHECK_COMPANY","IDENTITY_CHECK_PRIVATE","ADDITIONAL_TRANSPORTATION_INSURANCE","IDENTITY_AGE_CHECK_18","NO_NEIGHBOR_DELIVERY","HANDOVER_TO_RECIPIENT_ONLY"],"type":"string","title":"CarrierServices","description":"CarrierServices"},"ConsumerAddress":{"allOf":[{"$ref":"#/components/schemas/Address"}],"properties":{"addressType":{"$ref":"#/components/schemas/AddressType"},"companyName":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"},"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"personalTitle":{"type":"string"},"salutation":{"type":"string"}},"type":"object","title":"ConsumerAddress","description":"ConsumerAddress"},"Address":{"properties":{"additionalAddressInfo":{"type":"string"},"city":{"pattern":"^.+$","type":"string"},"country":{"description":"A two-digit country code as per ISO 3166-1 alpha-2","pattern":"^[A-Z]{2}$","type":"string"},"customAttributes":{"description":"Attributes that can be added to the address. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"houseNumber":{"pattern":"^.+$","type":"string"},"phoneNumbers":{"items":{"properties":{"customAttributes":{"description":"Attributes that can be added to the phonenumber. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"label":{"description":"Can be used to give a description for the number, like \"private\", \"business number\", etc.","type":"string"},"type":{"enum":["MOBILE","PHONE"],"type":"string"},"value":{"description":"The number itself. We do not enforce any format (yet).","type":"string"}},"required":["value","type"],"type":"object"},"maxItems":500,"type":"array"},"postalCode":{"pattern":"^.+$","type":"string"},"province":{"pattern":"^.+$","type":"string"},"street":{"pattern":"^.+$","type":"string"}},"required":["street","city","postalCode","country"],"type":"object","title":"Address","description":"Address"},"AddressType":{"description":"Type of this address, used e.g. for communication with the carrier. Use POSTAL_ADDRESS for the address where the order should be shipped to, INVOICE_ADDRESS for the address where the invoice is sent to and PARCEL_LOCKER if a parcel locker is used for this order.","enum":["POSTAL_ADDRESS","PARCEL_LOCKER","INVOICE_ADDRESS"],"type":"string","title":"AddressType"},"Coordinates":{"description":"Coordinates of the WGS84 geodetic reference system in Mercator projection, as used e.g. by the Google Maps API","properties":{"lat":{"description":"Latitude value","type":"number"},"lon":{"description":"Longitude value","type":"number"}},"required":["lat","lon"],"type":"object","title":"Coordinates"},"ExpectedPickLineItemForCreation":{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"transferId":{"type":"string"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["transferId","quantity","article"],"title":"ExpectedPickLineItemForCreation","description":"ExpectedPickLineItemForCreation"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PaymentInformation":{"properties":{"currency":{"description":"The currency in which the consumer paid with","type":"string"}},"type":"object","title":"PaymentInformation","description":"PaymentInformation"},"PickJobPickingTimes":{"additionalProperties":false,"properties":{"startLatestAt":{"description":"The date this pickJob should be started at last.","format":"date-time","type":"string"}},"type":"object","title":"PickJobPickingTimes","description":"PickJobPickingTimes"},"PickLineItemForCreation":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/MandatoryLineItemForCreation"}],"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["quantity","article"],"type":"object","title":"PickLineItemForCreation","description":"PickLineItemForCreation"},"MandatoryLineItemForCreation":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":50,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":50,"type":"array"}},"required":["article","quantity"],"title":"MandatoryLineItemForCreation","type":"object","description":"MandatoryLineItemForCreation"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"PickingMethodEnum":{"description":"Way in which the picking should be handled Deprecated: BATCH_PICKING, use BATCH instead","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string","title":"PickingMethodEnum"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"OperativeTransfer":{"additionalProperties":false,"properties":{"id":{"description":"The id of the transfer","type":"string"},"type":{"description":"The type of the transfer","enum":["SUPPLIER","RECEIVER"],"type":"string"}},"required":["id","type"],"title":"OperativeTransfer","type":"object","description":"OperativeTransfer"},"WorkflowInformation":{"additionalProperties":false,"properties":{"instanceRef":{"description":"The id identifying the workflow instance this entity belongs to.","type":"string"},"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[true],"type":"boolean"},"nodeRef":{"description":"The id identifying the node within the workflow instance tha this entity belongs to.","type":"string"}},"title":"WorkflowInformation","type":"object","description":"WorkflowInformation"},"WorkflowUnavailable":{"additionalProperties":false,"properties":{"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[false],"type":"boolean"}},"title":"WorkflowUnavailable","type":"object","description":"WorkflowUnavailable"},"PickJob":{"allOf":[{"$ref":"#/components/schemas/PickJobForCreation"},{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"anonymized":{"description":"Indicates if gdpr related data was anonymized","type":"boolean"},"assignedUsers":{"description":"Assigned users for this entity","items":{"$ref":"#/components/schemas/AssignedUser"},"type":"array"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformation"},"documentHandling":{"$ref":"#/components/schemas/DocumentHandling"},"documentsRef":{"description":"Reference to the documents collection from this entity","type":"string"},"editor":{"$ref":"#/components/schemas/Editor"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItem"},"type":"array"},"id":{"description":"The id of this pickjob. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"pickingZones":{"items":{"$ref":"#/components/schemas/PickingZone"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItem"},"type":"array"},"pickRunRef":{"description":"Pick run id to which the pick job belongs","type":"string"},"resetBlocked":{"default":false,"description":"Indicates if pickJob can still be resetted or restarted","type":"boolean"},"shortId":{"description":"A short identifier that helps assigning a pickJob to a customer. This is automatically created during creation.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"statusReason":{"deprecated":true,"description":"deprecated: Use subStatus instead. Maintained for backward compatibility.","type":"string"},"subStatus":{"$ref":"#/components/schemas/PickJobSubStatus","description":"The reason for the current status."},"usersModificationHistory":{"items":{"$ref":"#/components/schemas/UserModificationHistory"},"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["id","status","pickLineItems","shortId","workflowInformation","deliveryinformation","documentsRef"],"type":"object"}],"title":"PickJob","description":"PickJob"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"AssignedUser":{"properties":{"userId":{"description":"ID of the user who is assigned","type":"string"},"username":{"description":"username of the user who is assigned","type":"string"}},"required":["username","userId"],"type":"object","title":"AssignedUser","description":"AssignedUser"},"PickjobDeliveryInformation":{"allOf":[{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},{"required":["channel"]}],"title":"PickjobDeliveryInformation","description":"PickjobDeliveryInformation"},"DocumentHandling":{"properties":{"sendLabel":{"properties":{"enabled":{"default":false,"type":"boolean"}},"required":["enabled"],"type":"object"}},"required":["sendLabel"],"type":"object","title":"DocumentHandling","description":"DocumentHandling"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"ExpectedPickLineItem":{"allOf":[{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},{"properties":{"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"}},"required":["id"],"type":"object"}],"title":"ExpectedPickLineItem","description":"ExpectedPickLineItem"},"PickingZone":{"description":"Zones from which items can be picked","properties":{"zoneRef":{"type":"string"}},"required":["zoneRef"],"title":"PickingZone"},"PickLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickLineItem","description":"PickLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"PickJobSubStatus":{"description":"The reason for the current status, providing type-safe context beyond the status field.","enum":["SHORT_PICKED","ZERO_PICKED","WAITING_FOR_RELEASE_TIME","ORDER_MODIFIED","PROCESS_REROUTE","MANUAL_REROUTE","SHORT_PICK_REROUTE","TIME_TRIGGERED","STOCK_ZEROED","PICK_JOB_ABORTED","RECALCULATION"],"type":"string","xml":{"name":"PickJobSubStatus"},"title":"PickJobSubStatus"},"UserModificationHistory":{"additionalProperties":false,"properties":{"modificationDate":{"format":"date-time","type":"string"},"userId":{"description":"ID of the user who commited this modification","type":"string"},"username":{"description":"Username of the user who commited this modification","type":"string"}},"required":["modificationDate","username"],"type":"object","title":"UserModificationHistory","description":"UserModificationHistory"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs":{"post":{"description":"","operationId":"addPickJob","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJobForCreation"}}},"description":"Pick job object","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJob"}}},"description":"The pick job was successfully created. The Location header contains the URL of the pickjob."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"Create pick job","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickjobs/{pickJobId}

> Get pick job

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickJob":{"allOf":[{"$ref":"#/components/schemas/PickJobForCreation"},{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"anonymized":{"description":"Indicates if gdpr related data was anonymized","type":"boolean"},"assignedUsers":{"description":"Assigned users for this entity","items":{"$ref":"#/components/schemas/AssignedUser"},"type":"array"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformation"},"documentHandling":{"$ref":"#/components/schemas/DocumentHandling"},"documentsRef":{"description":"Reference to the documents collection from this entity","type":"string"},"editor":{"$ref":"#/components/schemas/Editor"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItem"},"type":"array"},"id":{"description":"The id of this pickjob. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"pickingZones":{"items":{"$ref":"#/components/schemas/PickingZone"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItem"},"type":"array"},"pickRunRef":{"description":"Pick run id to which the pick job belongs","type":"string"},"resetBlocked":{"default":false,"description":"Indicates if pickJob can still be resetted or restarted","type":"boolean"},"shortId":{"description":"A short identifier that helps assigning a pickJob to a customer. This is automatically created during creation.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"statusReason":{"deprecated":true,"description":"deprecated: Use subStatus instead. Maintained for backward compatibility.","type":"string"},"subStatus":{"$ref":"#/components/schemas/PickJobSubStatus","description":"The reason for the current status."},"usersModificationHistory":{"items":{"$ref":"#/components/schemas/UserModificationHistory"},"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["id","status","pickLineItems","shortId","workflowInformation","deliveryinformation","documentsRef"],"type":"object"}],"title":"PickJob","description":"PickJob"},"PickJobForCreation":{"additionalProperties":false,"properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"customAttributes":{"description":"Attributes that can be added to the pickjob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},"minItems":0,"type":"array"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"operativeProcessRef":{"type":"string"},"orderDate":{"description":"The date this order was created at the supplying system.","format":"date-time","type":"string"},"orderRef":{"description":"The id of the order reference. The given ID has to be present in the system.","type":"string"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"pickingTimes":{"$ref":"#/components/schemas/PickJobPickingTimes"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItemForCreation"},"minItems":0,"type":"array"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"processId":{"description":"Id of the global process related to this entity. For example used for starting the GDPR process and others.","type":"string"},"routingPlanRef":{"description":"Reference to the routingplan which created this pickjob","type":"string"},"shortId":{"description":"A short identifier that helps assigning a pick job to a customer.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"minItems":0,"type":"array"},"tenantOrderId":{"description":"Field can be used as a reference number in foreign systems, for example as a reference to the source system's identifier for this order.","type":"string"},"transfers":{"items":{"$ref":"#/components/schemas/OperativeTransfer"},"minItems":0,"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"description":"Tags can only be set when there is no process related with this pickJob. Setting processId and tags will lead to an validationError.","items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["orderDate","facilityRef","pickLineItems"],"type":"object","xml":{"name":"Pickjob"},"title":"PickJobForCreation","description":"PickJobForCreation"},"AssignedUserForCreationByName":{"description":"Create a assigned user by giving a valid name","properties":{"username":{"description":"username of the user should be assigned","type":"string"}},"required":["username"],"title":"AssignedUserForCreationByName","type":"object"},"AssignedUserForCreationById":{"description":"Create a assigned user by giving a valid id","properties":{"userId":{"description":"userId of the user should be assigned","type":"string"}},"required":["userId"],"title":"AssignedUserForCreationById","type":"object"},"PickjobDeliveryInformationForCreation":{"properties":{"channel":{"enum":["COLLECT","SHIPPING"],"type":"string"},"details":{"properties":{"collect":{"properties":{"identifier":{"description":"Includes information about Click & Collect recipient","type":"string"},"paid":{"default":false,"description":"Indicates if the order is already paid.","type":"boolean"}},"type":"object"},"shipping":{"properties":{"carrierKey":{"type":"string"},"carrierProduct":{"description":"Desired product of given carrier to choose when ordering a label, this is specific to a carrier","type":"string"},"carrierProductCategory":{"$ref":"#/components/schemas/CarrierProductCategory"},"carrierServices":{"items":{"$ref":"#/components/schemas/CarrierServices"},"type":"array"},"identifier":{"description":"Includes information on how to identify Ship from Store recipient (Name, PIN, Reference number, ...)","type":"string"},"invoiceAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"postalAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"recipientaddress":{"$ref":"#/components/schemas/ConsumerAddress"},"serviceLevel":{"description":"TBD","enum":["DELIVERY","SAMEDAY"],"type":"string"}},"type":"object"}},"type":"object"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"},"targetTimeBaseDate":{"description":"The start date for the targetTime calculation.","format":"date-time","type":"string"}},"type":"object","title":"PickjobDeliveryInformationForCreation","description":"PickjobDeliveryInformationForCreation"},"CarrierProductCategory":{"enum":["STANDARD","EXPRESS","VALUE","FORWARDING"],"type":"string","title":"CarrierProductCategory","description":"CarrierProductCategory"},"CarrierServices":{"enum":["SIGNATURE","CUSTOMER_SIGNATURE","ADULT_SIGNATURE","SATURDAY_DELIVERY","IDENTITY_CHECK_COMPANY","IDENTITY_CHECK_PRIVATE","ADDITIONAL_TRANSPORTATION_INSURANCE","IDENTITY_AGE_CHECK_18","NO_NEIGHBOR_DELIVERY","HANDOVER_TO_RECIPIENT_ONLY"],"type":"string","title":"CarrierServices","description":"CarrierServices"},"ConsumerAddress":{"allOf":[{"$ref":"#/components/schemas/Address"}],"properties":{"addressType":{"$ref":"#/components/schemas/AddressType"},"companyName":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"},"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"personalTitle":{"type":"string"},"salutation":{"type":"string"}},"type":"object","title":"ConsumerAddress","description":"ConsumerAddress"},"Address":{"properties":{"additionalAddressInfo":{"type":"string"},"city":{"pattern":"^.+$","type":"string"},"country":{"description":"A two-digit country code as per ISO 3166-1 alpha-2","pattern":"^[A-Z]{2}$","type":"string"},"customAttributes":{"description":"Attributes that can be added to the address. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"houseNumber":{"pattern":"^.+$","type":"string"},"phoneNumbers":{"items":{"properties":{"customAttributes":{"description":"Attributes that can be added to the phonenumber. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"label":{"description":"Can be used to give a description for the number, like \"private\", \"business number\", etc.","type":"string"},"type":{"enum":["MOBILE","PHONE"],"type":"string"},"value":{"description":"The number itself. We do not enforce any format (yet).","type":"string"}},"required":["value","type"],"type":"object"},"maxItems":500,"type":"array"},"postalCode":{"pattern":"^.+$","type":"string"},"province":{"pattern":"^.+$","type":"string"},"street":{"pattern":"^.+$","type":"string"}},"required":["street","city","postalCode","country"],"type":"object","title":"Address","description":"Address"},"AddressType":{"description":"Type of this address, used e.g. for communication with the carrier. Use POSTAL_ADDRESS for the address where the order should be shipped to, INVOICE_ADDRESS for the address where the invoice is sent to and PARCEL_LOCKER if a parcel locker is used for this order.","enum":["POSTAL_ADDRESS","PARCEL_LOCKER","INVOICE_ADDRESS"],"type":"string","title":"AddressType"},"Coordinates":{"description":"Coordinates of the WGS84 geodetic reference system in Mercator projection, as used e.g. by the Google Maps API","properties":{"lat":{"description":"Latitude value","type":"number"},"lon":{"description":"Longitude value","type":"number"}},"required":["lat","lon"],"type":"object","title":"Coordinates"},"ExpectedPickLineItemForCreation":{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"transferId":{"type":"string"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["transferId","quantity","article"],"title":"ExpectedPickLineItemForCreation","description":"ExpectedPickLineItemForCreation"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PaymentInformation":{"properties":{"currency":{"description":"The currency in which the consumer paid with","type":"string"}},"type":"object","title":"PaymentInformation","description":"PaymentInformation"},"PickJobPickingTimes":{"additionalProperties":false,"properties":{"startLatestAt":{"description":"The date this pickJob should be started at last.","format":"date-time","type":"string"}},"type":"object","title":"PickJobPickingTimes","description":"PickJobPickingTimes"},"PickLineItemForCreation":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/MandatoryLineItemForCreation"}],"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["quantity","article"],"type":"object","title":"PickLineItemForCreation","description":"PickLineItemForCreation"},"MandatoryLineItemForCreation":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":50,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":50,"type":"array"}},"required":["article","quantity"],"title":"MandatoryLineItemForCreation","type":"object","description":"MandatoryLineItemForCreation"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"PickingMethodEnum":{"description":"Way in which the picking should be handled Deprecated: BATCH_PICKING, use BATCH instead","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string","title":"PickingMethodEnum"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"OperativeTransfer":{"additionalProperties":false,"properties":{"id":{"description":"The id of the transfer","type":"string"},"type":{"description":"The type of the transfer","enum":["SUPPLIER","RECEIVER"],"type":"string"}},"required":["id","type"],"title":"OperativeTransfer","type":"object","description":"OperativeTransfer"},"WorkflowInformation":{"additionalProperties":false,"properties":{"instanceRef":{"description":"The id identifying the workflow instance this entity belongs to.","type":"string"},"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[true],"type":"boolean"},"nodeRef":{"description":"The id identifying the node within the workflow instance tha this entity belongs to.","type":"string"}},"title":"WorkflowInformation","type":"object","description":"WorkflowInformation"},"WorkflowUnavailable":{"additionalProperties":false,"properties":{"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[false],"type":"boolean"}},"title":"WorkflowUnavailable","type":"object","description":"WorkflowUnavailable"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"AssignedUser":{"properties":{"userId":{"description":"ID of the user who is assigned","type":"string"},"username":{"description":"username of the user who is assigned","type":"string"}},"required":["username","userId"],"type":"object","title":"AssignedUser","description":"AssignedUser"},"PickjobDeliveryInformation":{"allOf":[{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},{"required":["channel"]}],"title":"PickjobDeliveryInformation","description":"PickjobDeliveryInformation"},"DocumentHandling":{"properties":{"sendLabel":{"properties":{"enabled":{"default":false,"type":"boolean"}},"required":["enabled"],"type":"object"}},"required":["sendLabel"],"type":"object","title":"DocumentHandling","description":"DocumentHandling"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"ExpectedPickLineItem":{"allOf":[{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},{"properties":{"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"}},"required":["id"],"type":"object"}],"title":"ExpectedPickLineItem","description":"ExpectedPickLineItem"},"PickingZone":{"description":"Zones from which items can be picked","properties":{"zoneRef":{"type":"string"}},"required":["zoneRef"],"title":"PickingZone"},"PickLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickLineItem","description":"PickLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"PickJobSubStatus":{"description":"The reason for the current status, providing type-safe context beyond the status field.","enum":["SHORT_PICKED","ZERO_PICKED","WAITING_FOR_RELEASE_TIME","ORDER_MODIFIED","PROCESS_REROUTE","MANUAL_REROUTE","SHORT_PICK_REROUTE","TIME_TRIGGERED","STOCK_ZEROED","PICK_JOB_ABORTED","RECALCULATION"],"type":"string","xml":{"name":"PickJobSubStatus"},"title":"PickJobSubStatus"},"UserModificationHistory":{"additionalProperties":false,"properties":{"modificationDate":{"format":"date-time","type":"string"},"userId":{"description":"ID of the user who commited this modification","type":"string"},"username":{"description":"Username of the user who commited this modification","type":"string"}},"required":["modificationDate","username"],"type":"object","title":"UserModificationHistory","description":"UserModificationHistory"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}":{"get":{"description":"","operationId":"getPickJob","parameters":[{"description":"ID of the pickjob you want to get","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJob"}}},"description":"PickJob was found & you were allowed to access it. The result is in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Entity not found"}},"summary":"Get pick job","tags":["Picking (Operations)"]}}}}
```

## Update pick job

> This part of the API is deprecated. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />@deprecated Use POST /api/pickjobs/{pickJobId}/actions instead.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickingPatchActions":{"properties":{"actions":{"items":{"anyOf":[{"$ref":"#/components/schemas/ModifyPickLineItem"},{"$ref":"#/components/schemas/ModifyPickJob"},{"$ref":"#/components/schemas/ModifyPickJobLastEditor"},{"$ref":"#/components/schemas/RestartPickJob"},{"$ref":"#/components/schemas/ResetPickJob"},{"$ref":"#/components/schemas/AbortPickJob"}]},"minItems":1,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version","actions"],"type":"object","xml":{"name":"PickingPatchActions"},"title":"PickingPatchActions","description":"PickingPatchActions"},"ModifyPickLineItem":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"shortPickReasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"action":{"description":"Use value 'ModifyPickLineItem', because you want to modify a pick line item","enum":["ModifyPickLineItem"],"type":"string"},"customAttributes":{"description":"Attributes that can be added to the pick ine item. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForUpdate"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"scannedCodes":{"description":"Scanned Codes of the given picked line item","items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minItems":0},"secondaryPicked":{"type":"integer"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItemForUpsert"},"type":"array"}},"required":["id","action"],"type":"object"}],"description":"Action to modify a picklineitem of a PickJob.","title":"ModifyPickLineItem","xml":{"name":"ModifyPickLineItem"}},"AbstractModificationAction":{"discriminator":{"propertyName":"action"},"properties":{"action":{"description":"","enum":["AddAllowedValueToTag","ModifyPickJob","ModifyPickJobLastEditor","RestartPickJob","ResetPickJob","CancelPickRun","CancelHandoverjob","AbortPickJob","FinishPickRun","StartPickRun","ModifyPickLineItem","ModifyPickRunLineItem","ModifyPackJob","PausePackJob","ModifyPackLineItem","SplitLineItemsPackJob","ModifyFacility","ModifyListing","ModifyRetainedOfflineStock","ModifyListingReactivationAfter","ModifyUser","ModifyShipment","ModifyHandoverjob","ModifyCarrier","ModifyShortpick","ModifyRoutingPlan","ModifyFence","ModifyRating","ModifyTimingMode","ModifyGlobalRoutingConfiguration","ModifyOrderSplit","ModifyPrioritization","ModifyFeature","ModifyParcel","ModifyParcelLoadUnit","ModifyRestowItem","RemovePickJobFromPickRun","ModifyPartialStock","AddTagsToProcess","AssignFacilityToProcess","UpdateGdprCleanupDateAction","ModifyStorageLocation","ModifyPackingContainerType","ModifyPackingContainerTypeIcon","ReplaceCodesInPackingTargetContainer","AddLineItemToPackingTargetContainer","RemoveLineItemFromPackingTargetContainer","UpdateLineItemOnPackingTargetContainer","UpdatePackingTargetContainerLineItemRecordableAttributes","UpdatePackingTargetContainerStorageLocation","ModifyCustomService","UnlockOrder"],"type":"string"}},"required":["action"],"type":"object","xml":{"name":"AbstractModificationAction"},"title":"AbstractModificationAction","description":"AbstractModificationAction"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"PickJobLineItemPartialStockLocationForUpdate":{"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","picked"],"type":"object","title":"PickJobLineItemPartialStockLocationForUpdate","description":"PickJobLineItemPartialStockLocationForUpdate"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItemForUpsert":{"properties":{"id":{"description":"The id of the substitute line item to update. If none is passed, a new substitute line item will be created.","type":"string"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"},"tenantArticleId":{"description":"TenantArticleId of the substitute article","type":"string"}},"required":["tenantArticleId","quantity"],"type":"object","title":"SubstituteLineItemForUpsert","description":"SubstituteLineItemForUpsert"},"ModifyPickJob":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'ModifyPickJob', because you want to modify a pickjob","enum":["ModifyPickJob"],"type":"string"},"customAttributes":{"description":"Attributes that can be added to the pickJob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"status":{"$ref":"#/components/schemas/PickJobStatusUnprotected"}},"required":["action"],"type":"object"}],"description":"Action to modify a PickJob.","title":"ModifyPickJob","xml":{"name":"ModifyPickJob"}},"PaymentInformation":{"properties":{"currency":{"description":"The currency in which the consumer paid with","type":"string"}},"type":"object","title":"PaymentInformation","description":"PaymentInformation"},"PickingMethodEnum":{"description":"Way in which the picking should be handled Deprecated: BATCH_PICKING, use BATCH instead","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string","title":"PickingMethodEnum"},"PickJobStatusUnprotected":{"description":"The status of a pickjob. These are the status that are still allowed to be used in the deprecated status field of ModifyPickJob actions","enum":["OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","PAUSED","WAITING_FOR_INPUT"],"type":"string","xml":{"name":"PickJobStatusUnprotected"},"title":"PickJobStatusUnprotected"},"ModifyPickJobLastEditor":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'ModifyPickJobLastEditor' to set the last editor to your user and therefor take over the pickjob.","enum":["ModifyPickJobLastEditor"],"type":"string"}},"required":["action"],"type":"object"}],"description":"Action to modify the last editor of a PickJob.","title":"ModifyPickJobLastEditor","xml":{"name":"ModifyPickJobLastEditor"}},"RestartPickJob":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'RestartPickJob' to restart the pickJob and set it back to status IN_PROGRESS.","enum":["RestartPickJob"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickjobs/:id/actions instead","title":"RestartPickJob","xml":{"name":"RestartPickJob"}},"ResetPickJob":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'ResetPickJob' to reset the pickJob and set it back to status OPEN and reset the pick line items.","enum":["ResetPickJob"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickjobs/:id/actions instead","title":"ResetPickJob","xml":{"name":"ResetPickJob"}},"AbortPickJob":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'AbortPickJob', because you want to cancel a pickjob","enum":["AbortPickJob"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickjobs/:id/actions instead","title":"AbortPickJob","xml":{"name":"AbortPickJob"}},"PickJob":{"allOf":[{"$ref":"#/components/schemas/PickJobForCreation"},{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"anonymized":{"description":"Indicates if gdpr related data was anonymized","type":"boolean"},"assignedUsers":{"description":"Assigned users for this entity","items":{"$ref":"#/components/schemas/AssignedUser"},"type":"array"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformation"},"documentHandling":{"$ref":"#/components/schemas/DocumentHandling"},"documentsRef":{"description":"Reference to the documents collection from this entity","type":"string"},"editor":{"$ref":"#/components/schemas/Editor"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItem"},"type":"array"},"id":{"description":"The id of this pickjob. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"pickingZones":{"items":{"$ref":"#/components/schemas/PickingZone"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItem"},"type":"array"},"pickRunRef":{"description":"Pick run id to which the pick job belongs","type":"string"},"resetBlocked":{"default":false,"description":"Indicates if pickJob can still be resetted or restarted","type":"boolean"},"shortId":{"description":"A short identifier that helps assigning a pickJob to a customer. This is automatically created during creation.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"statusReason":{"deprecated":true,"description":"deprecated: Use subStatus instead. Maintained for backward compatibility.","type":"string"},"subStatus":{"$ref":"#/components/schemas/PickJobSubStatus","description":"The reason for the current status."},"usersModificationHistory":{"items":{"$ref":"#/components/schemas/UserModificationHistory"},"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["id","status","pickLineItems","shortId","workflowInformation","deliveryinformation","documentsRef"],"type":"object"}],"title":"PickJob","description":"PickJob"},"PickJobForCreation":{"additionalProperties":false,"properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"customAttributes":{"description":"Attributes that can be added to the pickjob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},"minItems":0,"type":"array"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"operativeProcessRef":{"type":"string"},"orderDate":{"description":"The date this order was created at the supplying system.","format":"date-time","type":"string"},"orderRef":{"description":"The id of the order reference. The given ID has to be present in the system.","type":"string"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"pickingTimes":{"$ref":"#/components/schemas/PickJobPickingTimes"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItemForCreation"},"minItems":0,"type":"array"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"processId":{"description":"Id of the global process related to this entity. For example used for starting the GDPR process and others.","type":"string"},"routingPlanRef":{"description":"Reference to the routingplan which created this pickjob","type":"string"},"shortId":{"description":"A short identifier that helps assigning a pick job to a customer.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"minItems":0,"type":"array"},"tenantOrderId":{"description":"Field can be used as a reference number in foreign systems, for example as a reference to the source system's identifier for this order.","type":"string"},"transfers":{"items":{"$ref":"#/components/schemas/OperativeTransfer"},"minItems":0,"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"description":"Tags can only be set when there is no process related with this pickJob. Setting processId and tags will lead to an validationError.","items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["orderDate","facilityRef","pickLineItems"],"type":"object","xml":{"name":"Pickjob"},"title":"PickJobForCreation","description":"PickJobForCreation"},"AssignedUserForCreationByName":{"description":"Create a assigned user by giving a valid name","properties":{"username":{"description":"username of the user should be assigned","type":"string"}},"required":["username"],"title":"AssignedUserForCreationByName","type":"object"},"AssignedUserForCreationById":{"description":"Create a assigned user by giving a valid id","properties":{"userId":{"description":"userId of the user should be assigned","type":"string"}},"required":["userId"],"title":"AssignedUserForCreationById","type":"object"},"PickjobDeliveryInformationForCreation":{"properties":{"channel":{"enum":["COLLECT","SHIPPING"],"type":"string"},"details":{"properties":{"collect":{"properties":{"identifier":{"description":"Includes information about Click & Collect recipient","type":"string"},"paid":{"default":false,"description":"Indicates if the order is already paid.","type":"boolean"}},"type":"object"},"shipping":{"properties":{"carrierKey":{"type":"string"},"carrierProduct":{"description":"Desired product of given carrier to choose when ordering a label, this is specific to a carrier","type":"string"},"carrierProductCategory":{"$ref":"#/components/schemas/CarrierProductCategory"},"carrierServices":{"items":{"$ref":"#/components/schemas/CarrierServices"},"type":"array"},"identifier":{"description":"Includes information on how to identify Ship from Store recipient (Name, PIN, Reference number, ...)","type":"string"},"invoiceAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"postalAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"recipientaddress":{"$ref":"#/components/schemas/ConsumerAddress"},"serviceLevel":{"description":"TBD","enum":["DELIVERY","SAMEDAY"],"type":"string"}},"type":"object"}},"type":"object"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"},"targetTimeBaseDate":{"description":"The start date for the targetTime calculation.","format":"date-time","type":"string"}},"type":"object","title":"PickjobDeliveryInformationForCreation","description":"PickjobDeliveryInformationForCreation"},"CarrierProductCategory":{"enum":["STANDARD","EXPRESS","VALUE","FORWARDING"],"type":"string","title":"CarrierProductCategory","description":"CarrierProductCategory"},"CarrierServices":{"enum":["SIGNATURE","CUSTOMER_SIGNATURE","ADULT_SIGNATURE","SATURDAY_DELIVERY","IDENTITY_CHECK_COMPANY","IDENTITY_CHECK_PRIVATE","ADDITIONAL_TRANSPORTATION_INSURANCE","IDENTITY_AGE_CHECK_18","NO_NEIGHBOR_DELIVERY","HANDOVER_TO_RECIPIENT_ONLY"],"type":"string","title":"CarrierServices","description":"CarrierServices"},"ConsumerAddress":{"allOf":[{"$ref":"#/components/schemas/Address"}],"properties":{"addressType":{"$ref":"#/components/schemas/AddressType"},"companyName":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"},"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"personalTitle":{"type":"string"},"salutation":{"type":"string"}},"type":"object","title":"ConsumerAddress","description":"ConsumerAddress"},"Address":{"properties":{"additionalAddressInfo":{"type":"string"},"city":{"pattern":"^.+$","type":"string"},"country":{"description":"A two-digit country code as per ISO 3166-1 alpha-2","pattern":"^[A-Z]{2}$","type":"string"},"customAttributes":{"description":"Attributes that can be added to the address. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"houseNumber":{"pattern":"^.+$","type":"string"},"phoneNumbers":{"items":{"properties":{"customAttributes":{"description":"Attributes that can be added to the phonenumber. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"label":{"description":"Can be used to give a description for the number, like \"private\", \"business number\", etc.","type":"string"},"type":{"enum":["MOBILE","PHONE"],"type":"string"},"value":{"description":"The number itself. We do not enforce any format (yet).","type":"string"}},"required":["value","type"],"type":"object"},"maxItems":500,"type":"array"},"postalCode":{"pattern":"^.+$","type":"string"},"province":{"pattern":"^.+$","type":"string"},"street":{"pattern":"^.+$","type":"string"}},"required":["street","city","postalCode","country"],"type":"object","title":"Address","description":"Address"},"AddressType":{"description":"Type of this address, used e.g. for communication with the carrier. Use POSTAL_ADDRESS for the address where the order should be shipped to, INVOICE_ADDRESS for the address where the invoice is sent to and PARCEL_LOCKER if a parcel locker is used for this order.","enum":["POSTAL_ADDRESS","PARCEL_LOCKER","INVOICE_ADDRESS"],"type":"string","title":"AddressType"},"Coordinates":{"description":"Coordinates of the WGS84 geodetic reference system in Mercator projection, as used e.g. by the Google Maps API","properties":{"lat":{"description":"Latitude value","type":"number"},"lon":{"description":"Longitude value","type":"number"}},"required":["lat","lon"],"type":"object","title":"Coordinates"},"ExpectedPickLineItemForCreation":{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"transferId":{"type":"string"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["transferId","quantity","article"],"title":"ExpectedPickLineItemForCreation","description":"ExpectedPickLineItemForCreation"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PickJobPickingTimes":{"additionalProperties":false,"properties":{"startLatestAt":{"description":"The date this pickJob should be started at last.","format":"date-time","type":"string"}},"type":"object","title":"PickJobPickingTimes","description":"PickJobPickingTimes"},"PickLineItemForCreation":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/MandatoryLineItemForCreation"}],"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["quantity","article"],"type":"object","title":"PickLineItemForCreation","description":"PickLineItemForCreation"},"MandatoryLineItemForCreation":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":50,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":50,"type":"array"}},"required":["article","quantity"],"title":"MandatoryLineItemForCreation","type":"object","description":"MandatoryLineItemForCreation"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"OperativeTransfer":{"additionalProperties":false,"properties":{"id":{"description":"The id of the transfer","type":"string"},"type":{"description":"The type of the transfer","enum":["SUPPLIER","RECEIVER"],"type":"string"}},"required":["id","type"],"title":"OperativeTransfer","type":"object","description":"OperativeTransfer"},"WorkflowInformation":{"additionalProperties":false,"properties":{"instanceRef":{"description":"The id identifying the workflow instance this entity belongs to.","type":"string"},"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[true],"type":"boolean"},"nodeRef":{"description":"The id identifying the node within the workflow instance tha this entity belongs to.","type":"string"}},"title":"WorkflowInformation","type":"object","description":"WorkflowInformation"},"WorkflowUnavailable":{"additionalProperties":false,"properties":{"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[false],"type":"boolean"}},"title":"WorkflowUnavailable","type":"object","description":"WorkflowUnavailable"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"AssignedUser":{"properties":{"userId":{"description":"ID of the user who is assigned","type":"string"},"username":{"description":"username of the user who is assigned","type":"string"}},"required":["username","userId"],"type":"object","title":"AssignedUser","description":"AssignedUser"},"PickjobDeliveryInformation":{"allOf":[{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},{"required":["channel"]}],"title":"PickjobDeliveryInformation","description":"PickjobDeliveryInformation"},"DocumentHandling":{"properties":{"sendLabel":{"properties":{"enabled":{"default":false,"type":"boolean"}},"required":["enabled"],"type":"object"}},"required":["sendLabel"],"type":"object","title":"DocumentHandling","description":"DocumentHandling"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"ExpectedPickLineItem":{"allOf":[{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},{"properties":{"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"}},"required":["id"],"type":"object"}],"title":"ExpectedPickLineItem","description":"ExpectedPickLineItem"},"PickingZone":{"description":"Zones from which items can be picked","properties":{"zoneRef":{"type":"string"}},"required":["zoneRef"],"title":"PickingZone"},"PickLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickLineItem","description":"PickLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"PickJobSubStatus":{"description":"The reason for the current status, providing type-safe context beyond the status field.","enum":["SHORT_PICKED","ZERO_PICKED","WAITING_FOR_RELEASE_TIME","ORDER_MODIFIED","PROCESS_REROUTE","MANUAL_REROUTE","SHORT_PICK_REROUTE","TIME_TRIGGERED","STOCK_ZEROED","PICK_JOB_ABORTED","RECALCULATION"],"type":"string","xml":{"name":"PickJobSubStatus"},"title":"PickJobSubStatus"},"UserModificationHistory":{"additionalProperties":false,"properties":{"modificationDate":{"format":"date-time","type":"string"},"userId":{"description":"ID of the user who commited this modification","type":"string"},"username":{"description":"Username of the user who commited this modification","type":"string"}},"required":["modificationDate","username"],"type":"object","title":"UserModificationHistory","description":"UserModificationHistory"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}":{"patch":{"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use POST /api/pickjobs/{pickJobId}/actions instead.","operationId":"patchPickJob","parameters":[{"description":"ID of the pickjob you want to get","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickingPatchActions"}}},"description":"Patch set","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJob"}}},"description":"PickJob was found & patch-set has been applied. The patched pick job is in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"PickJob not found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"PickJob version conflict"}},"summary":"Update pick job","tags":["Picking (Operations)"]}}}}
```

## POST /api/pickjobs/{pickJobId}/actions

> Call pick job action

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickJobActionsParameter":{"anyOf":[{"$ref":"#/components/schemas/PickJobAbortActionParameter"},{"$ref":"#/components/schemas/PickJobRestartActionParameter"},{"$ref":"#/components/schemas/PickJobResetActionParameter"},{"$ref":"#/components/schemas/PickJobObsoleteActionParameter"},{"$ref":"#/components/schemas/PickJobReplaceAssignedUsersActionParameter"},{"$ref":"#/components/schemas/PickJobPauseActionParameter"},{"$ref":"#/components/schemas/PickJobStartActionParameter"},{"$ref":"#/components/schemas/PickJobSplitLineItemsActionParameter"},{"$ref":"#/components/schemas/PickJobMergeLineItemsActionParameter"},{"$ref":"#/components/schemas/UpdatePickLineItemRecordableAttributesActionParameter"},{"$ref":"#/components/schemas/PickJobPickedActionParameter"},{"$ref":"#/components/schemas/ModifyPickLineItemsActionParameter"}],"title":"PickJobActionsParameter","description":"PickJobActionsParameter"},"PickJobAbortActionParameter":{"additionalProperties":false,"description":"Action to Abort a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/PickJobAbortActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobAbortActionParameter"},"PickJobAbortActionEnum":{"enum":["ABORT"],"type":"string","title":"PickJobAbortActionEnum","description":"PickJobAbortActionEnum"},"PickJobRestartActionParameter":{"additionalProperties":false,"description":"Action to Restart a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/PickJobRestartActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobRestartActionParameter"},"PickJobRestartActionEnum":{"enum":["RESTART"],"type":"string","title":"PickJobRestartActionEnum","description":"PickJobRestartActionEnum"},"PickJobResetActionParameter":{"additionalProperties":false,"description":"Action to reset a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/PickJobResetActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobResetActionParameter"},"PickJobResetActionEnum":{"enum":["RESET"],"type":"string","title":"PickJobResetActionEnum","description":"PickJobResetActionEnum"},"PickJobObsoleteActionParameter":{"additionalProperties":false,"description":"Action to set the status to Obsolete of a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/PickJobObsoleteActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobObsoleteActionParameter"},"PickJobObsoleteActionEnum":{"enum":["OBSOLETE"],"type":"string","title":"PickJobObsoleteActionEnum","description":"PickJobObsoleteActionEnum"},"PickJobReplaceAssignedUsersActionParameter":{"additionalProperties":false,"description":"Action to replace the assigned users.","properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"name":{"$ref":"#/components/schemas/PickJobReplaceAssignedUsersActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version","assignedUsers"],"title":"PickJobReplaceAssignedUsersActionParameter"},"AssignedUserForCreationByName":{"description":"Create a assigned user by giving a valid name","properties":{"username":{"description":"username of the user should be assigned","type":"string"}},"required":["username"],"title":"AssignedUserForCreationByName","type":"object"},"AssignedUserForCreationById":{"description":"Create a assigned user by giving a valid id","properties":{"userId":{"description":"userId of the user should be assigned","type":"string"}},"required":["userId"],"title":"AssignedUserForCreationById","type":"object"},"PickJobReplaceAssignedUsersActionEnum":{"enum":["REPLACE_ASSIGNED_USERS"],"type":"string","title":"PickJobReplaceAssignedUsersActionEnum","description":"PickJobReplaceAssignedUsersActionEnum"},"PickJobPauseActionParameter":{"additionalProperties":false,"description":"Action to pause a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/PickJobPauseActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobPauseActionParameter"},"PickJobPauseActionEnum":{"enum":["PAUSE"],"type":"string","title":"PickJobPauseActionEnum","description":"PickJobPauseActionEnum"},"PickJobStartActionParameter":{"additionalProperties":false,"description":"Action to start a PickJob by setting it and its line items to IN_PROGRESS.","properties":{"name":{"$ref":"#/components/schemas/PickJobStartActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickJobStartActionParameter"},"PickJobStartActionEnum":{"enum":["START"],"type":"string","title":"PickJobStartActionEnum","description":"PickJobStartActionEnum"},"PickJobSplitLineItemsActionParameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/components/schemas/PickJobSplitLineItemsActionEnum"},"splitLineItemsInfo":{"items":{"$ref":"#/components/schemas/PickJobSplitLineItemsInfo"},"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["name","version","splitLineItemsInfo"],"title":"PickJobSplitLineItemsActionParameter","type":"object","description":"PickJobSplitLineItemsActionParameter"},"PickJobSplitLineItemsActionEnum":{"enum":["SPLIT_LINE_ITEMS_PICK_JOB"],"type":"string","title":"PickJobSplitLineItemsActionEnum","description":"PickJobSplitLineItemsActionEnum"},"PickJobSplitLineItemsInfo":{"additionalProperties":false,"properties":{"lineItemId":{"description":"references the id of the pickLineItem of a pickJob","type":"string"},"picked":{"description":"The amount of articles that were picked for this line item.","format":"int64","minimum":0,"type":"integer"},"quantity":{"description":"quantity of the specific item that has been ordered","minimum":1,"type":"integer"}},"required":["lineItemId","quantity","picked"],"type":"object","title":"PickJobSplitLineItemsInfo","description":"PickJobSplitLineItemsInfo"},"PickJobMergeLineItemsActionParameter":{"additionalProperties":false,"properties":{"lineItemIds":{"description":"Ids of the line items that should be merged","items":{"type":"string"},"type":"array"},"name":{"$ref":"#/components/schemas/PickJobMergeLineItemsActionEnum"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["name","version","lineItemIds"],"title":"PickJobMergeLineItemsActionParameter","type":"object","description":"PickJobMergeLineItemsActionParameter"},"PickJobMergeLineItemsActionEnum":{"enum":["MERGE_LINE_ITEMS_PICK_JOB"],"type":"string","title":"PickJobMergeLineItemsActionEnum","description":"PickJobMergeLineItemsActionEnum"},"UpdatePickLineItemRecordableAttributesActionParameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/components/schemas/UpdatePickLineItemRecordableAttributesActionEnum"},"recordableAttributeUpdates":{"items":{"$ref":"#/components/schemas/RecordableAttributeForUpdate"},"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["name","version","recordableAttributeUpdates"],"title":"UpdatePickLineItemRecordableAttributesActionParameter","type":"object","description":"UpdatePickLineItemRecordableAttributesActionParameter"},"UpdatePickLineItemRecordableAttributesActionEnum":{"enum":["UPDATE_PICK_LINE_ITEM_RECORDABLE_ATTRIBUTES"],"type":"string","title":"UpdatePickLineItemRecordableAttributesActionEnum","description":"UpdatePickLineItemRecordableAttributesActionEnum"},"RecordableAttributeForUpdate":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute to set","minLength":1,"nullable":true,"type":"string"},"recordableAttributeId":{"description":"id of the recordable attribute to update","type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute to set","nullable":true,"type":"string"}},"required":["recordableAttributeId"],"title":"RecordableAttributeForUpdate","type":"object","description":"RecordableAttributeForUpdate"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"PickJobPickedActionParameter":{"additionalProperties":false,"description":"Action to set the status to Picked of a Pickjob.","properties":{"lineItems":{"description":"Pick line items that should be updated ","items":{"$ref":"#/components/schemas/PickPickJobPickLineItemUpdate"},"maxItems":100,"minItems":1,"type":"array"},"name":{"$ref":"#/components/schemas/PickJobPickedActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version","lineItems"],"title":"PickJobPickedActionParameter"},"PickPickJobPickLineItemUpdate":{"additionalProperties":false,"properties":{"customAttributes":{"description":"Attributes that can be added to the pick ine item. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","nullable":true,"type":"object"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForUpdate"},"maxItems":50,"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked. example: '2024-02-03T08:45:51.525Z' format: date-time type: string"},"scannedCodes":{"description":"Scanned Codes of the given picked line item","items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"maxItems":50,"minItems":0,"type":"array"},"secondaryPicked":{"type":"integer"},"shortPickReason":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"}}},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"maxItems":50,"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItemForUpsert"},"maxItems":50,"type":"array"}},"required":["id"],"type":"object","title":"PickPickJobPickLineItemUpdate","description":"PickPickJobPickLineItemUpdate"},"PickJobLineItemPartialStockLocationForUpdate":{"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","picked"],"type":"object","title":"PickJobLineItemPartialStockLocationForUpdate","description":"PickJobLineItemPartialStockLocationForUpdate"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItemForUpsert":{"properties":{"id":{"description":"The id of the substitute line item to update. If none is passed, a new substitute line item will be created.","type":"string"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"},"tenantArticleId":{"description":"TenantArticleId of the substitute article","type":"string"}},"required":["tenantArticleId","quantity"],"type":"object","title":"SubstituteLineItemForUpsert","description":"SubstituteLineItemForUpsert"},"PickJobPickedActionEnum":{"enum":["PICK"],"type":"string","title":"PickJobPickedActionEnum","description":"PickJobPickedActionEnum"},"ModifyPickLineItemsActionParameter":{"additionalProperties":false,"description":"Action to modify picklineItems of a Pickjob.","properties":{"name":{"$ref":"#/components/schemas/ModifyPickJobLineItemsActionEnum"},"pickJobLineItemUpdates":{"items":{"$ref":"#/components/schemas/PickLineItemUpdate"},"minItems":1,"type":"array"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version","pickJobLineItemUpdates"],"title":"ModifyPickLineItemsActionParameter"},"ModifyPickJobLineItemsActionEnum":{"enum":["MODIFY_PICK_JOB_LINE_ITEMS"],"type":"string","title":"ModifyPickJobLineItemsActionEnum","description":"ModifyPickJobLineItemsActionEnum"},"PickLineItemUpdate":{"additionalProperties":false,"properties":{"customAttributes":{"description":"Attributes that can be added to the pick ine item. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","nullable":true,"type":"object"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForUpdate"},"maxItems":50,"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"scannedCodes":{"description":"Scanned Codes of the given picked line item","items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"maxItems":50,"minItems":0,"type":"array"},"secondaryPicked":{"type":"integer"},"shortPickReason":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"}}},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"maxItems":50,"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItemForUpsert"},"maxItems":50,"type":"array"}},"required":["id"],"type":"object","title":"PickLineItemUpdate","description":"PickLineItemUpdate"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"PickJob":{"allOf":[{"$ref":"#/components/schemas/PickJobForCreation"},{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"anonymized":{"description":"Indicates if gdpr related data was anonymized","type":"boolean"},"assignedUsers":{"description":"Assigned users for this entity","items":{"$ref":"#/components/schemas/AssignedUser"},"type":"array"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformation"},"documentHandling":{"$ref":"#/components/schemas/DocumentHandling"},"documentsRef":{"description":"Reference to the documents collection from this entity","type":"string"},"editor":{"$ref":"#/components/schemas/Editor"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItem"},"type":"array"},"id":{"description":"The id of this pickjob. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"pickingZones":{"items":{"$ref":"#/components/schemas/PickingZone"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItem"},"type":"array"},"pickRunRef":{"description":"Pick run id to which the pick job belongs","type":"string"},"resetBlocked":{"default":false,"description":"Indicates if pickJob can still be resetted or restarted","type":"boolean"},"shortId":{"description":"A short identifier that helps assigning a pickJob to a customer. This is automatically created during creation.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"statusReason":{"deprecated":true,"description":"deprecated: Use subStatus instead. Maintained for backward compatibility.","type":"string"},"subStatus":{"$ref":"#/components/schemas/PickJobSubStatus","description":"The reason for the current status."},"usersModificationHistory":{"items":{"$ref":"#/components/schemas/UserModificationHistory"},"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["id","status","pickLineItems","shortId","workflowInformation","deliveryinformation","documentsRef"],"type":"object"}],"title":"PickJob","description":"PickJob"},"PickJobForCreation":{"additionalProperties":false,"properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"customAttributes":{"description":"Attributes that can be added to the pickjob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},"minItems":0,"type":"array"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"operativeProcessRef":{"type":"string"},"orderDate":{"description":"The date this order was created at the supplying system.","format":"date-time","type":"string"},"orderRef":{"description":"The id of the order reference. The given ID has to be present in the system.","type":"string"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"pickingTimes":{"$ref":"#/components/schemas/PickJobPickingTimes"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItemForCreation"},"minItems":0,"type":"array"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"processId":{"description":"Id of the global process related to this entity. For example used for starting the GDPR process and others.","type":"string"},"routingPlanRef":{"description":"Reference to the routingplan which created this pickjob","type":"string"},"shortId":{"description":"A short identifier that helps assigning a pick job to a customer.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"minItems":0,"type":"array"},"tenantOrderId":{"description":"Field can be used as a reference number in foreign systems, for example as a reference to the source system's identifier for this order.","type":"string"},"transfers":{"items":{"$ref":"#/components/schemas/OperativeTransfer"},"minItems":0,"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"description":"Tags can only be set when there is no process related with this pickJob. Setting processId and tags will lead to an validationError.","items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["orderDate","facilityRef","pickLineItems"],"type":"object","xml":{"name":"Pickjob"},"title":"PickJobForCreation","description":"PickJobForCreation"},"PickjobDeliveryInformationForCreation":{"properties":{"channel":{"enum":["COLLECT","SHIPPING"],"type":"string"},"details":{"properties":{"collect":{"properties":{"identifier":{"description":"Includes information about Click & Collect recipient","type":"string"},"paid":{"default":false,"description":"Indicates if the order is already paid.","type":"boolean"}},"type":"object"},"shipping":{"properties":{"carrierKey":{"type":"string"},"carrierProduct":{"description":"Desired product of given carrier to choose when ordering a label, this is specific to a carrier","type":"string"},"carrierProductCategory":{"$ref":"#/components/schemas/CarrierProductCategory"},"carrierServices":{"items":{"$ref":"#/components/schemas/CarrierServices"},"type":"array"},"identifier":{"description":"Includes information on how to identify Ship from Store recipient (Name, PIN, Reference number, ...)","type":"string"},"invoiceAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"postalAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"recipientaddress":{"$ref":"#/components/schemas/ConsumerAddress"},"serviceLevel":{"description":"TBD","enum":["DELIVERY","SAMEDAY"],"type":"string"}},"type":"object"}},"type":"object"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"},"targetTimeBaseDate":{"description":"The start date for the targetTime calculation.","format":"date-time","type":"string"}},"type":"object","title":"PickjobDeliveryInformationForCreation","description":"PickjobDeliveryInformationForCreation"},"CarrierProductCategory":{"enum":["STANDARD","EXPRESS","VALUE","FORWARDING"],"type":"string","title":"CarrierProductCategory","description":"CarrierProductCategory"},"CarrierServices":{"enum":["SIGNATURE","CUSTOMER_SIGNATURE","ADULT_SIGNATURE","SATURDAY_DELIVERY","IDENTITY_CHECK_COMPANY","IDENTITY_CHECK_PRIVATE","ADDITIONAL_TRANSPORTATION_INSURANCE","IDENTITY_AGE_CHECK_18","NO_NEIGHBOR_DELIVERY","HANDOVER_TO_RECIPIENT_ONLY"],"type":"string","title":"CarrierServices","description":"CarrierServices"},"ConsumerAddress":{"allOf":[{"$ref":"#/components/schemas/Address"}],"properties":{"addressType":{"$ref":"#/components/schemas/AddressType"},"companyName":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"},"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"personalTitle":{"type":"string"},"salutation":{"type":"string"}},"type":"object","title":"ConsumerAddress","description":"ConsumerAddress"},"Address":{"properties":{"additionalAddressInfo":{"type":"string"},"city":{"pattern":"^.+$","type":"string"},"country":{"description":"A two-digit country code as per ISO 3166-1 alpha-2","pattern":"^[A-Z]{2}$","type":"string"},"customAttributes":{"description":"Attributes that can be added to the address. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"houseNumber":{"pattern":"^.+$","type":"string"},"phoneNumbers":{"items":{"properties":{"customAttributes":{"description":"Attributes that can be added to the phonenumber. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"label":{"description":"Can be used to give a description for the number, like \"private\", \"business number\", etc.","type":"string"},"type":{"enum":["MOBILE","PHONE"],"type":"string"},"value":{"description":"The number itself. We do not enforce any format (yet).","type":"string"}},"required":["value","type"],"type":"object"},"maxItems":500,"type":"array"},"postalCode":{"pattern":"^.+$","type":"string"},"province":{"pattern":"^.+$","type":"string"},"street":{"pattern":"^.+$","type":"string"}},"required":["street","city","postalCode","country"],"type":"object","title":"Address","description":"Address"},"AddressType":{"description":"Type of this address, used e.g. for communication with the carrier. Use POSTAL_ADDRESS for the address where the order should be shipped to, INVOICE_ADDRESS for the address where the invoice is sent to and PARCEL_LOCKER if a parcel locker is used for this order.","enum":["POSTAL_ADDRESS","PARCEL_LOCKER","INVOICE_ADDRESS"],"type":"string","title":"AddressType"},"Coordinates":{"description":"Coordinates of the WGS84 geodetic reference system in Mercator projection, as used e.g. by the Google Maps API","properties":{"lat":{"description":"Latitude value","type":"number"},"lon":{"description":"Longitude value","type":"number"}},"required":["lat","lon"],"type":"object","title":"Coordinates"},"ExpectedPickLineItemForCreation":{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"transferId":{"type":"string"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["transferId","quantity","article"],"title":"ExpectedPickLineItemForCreation","description":"ExpectedPickLineItemForCreation"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PaymentInformation":{"properties":{"currency":{"description":"The currency in which the consumer paid with","type":"string"}},"type":"object","title":"PaymentInformation","description":"PaymentInformation"},"PickJobPickingTimes":{"additionalProperties":false,"properties":{"startLatestAt":{"description":"The date this pickJob should be started at last.","format":"date-time","type":"string"}},"type":"object","title":"PickJobPickingTimes","description":"PickJobPickingTimes"},"PickLineItemForCreation":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/MandatoryLineItemForCreation"}],"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["quantity","article"],"type":"object","title":"PickLineItemForCreation","description":"PickLineItemForCreation"},"MandatoryLineItemForCreation":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":50,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":50,"type":"array"}},"required":["article","quantity"],"title":"MandatoryLineItemForCreation","type":"object","description":"MandatoryLineItemForCreation"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"PickingMethodEnum":{"description":"Way in which the picking should be handled Deprecated: BATCH_PICKING, use BATCH instead","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string","title":"PickingMethodEnum"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"OperativeTransfer":{"additionalProperties":false,"properties":{"id":{"description":"The id of the transfer","type":"string"},"type":{"description":"The type of the transfer","enum":["SUPPLIER","RECEIVER"],"type":"string"}},"required":["id","type"],"title":"OperativeTransfer","type":"object","description":"OperativeTransfer"},"WorkflowInformation":{"additionalProperties":false,"properties":{"instanceRef":{"description":"The id identifying the workflow instance this entity belongs to.","type":"string"},"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[true],"type":"boolean"},"nodeRef":{"description":"The id identifying the node within the workflow instance tha this entity belongs to.","type":"string"}},"title":"WorkflowInformation","type":"object","description":"WorkflowInformation"},"WorkflowUnavailable":{"additionalProperties":false,"properties":{"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[false],"type":"boolean"}},"title":"WorkflowUnavailable","type":"object","description":"WorkflowUnavailable"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"AssignedUser":{"properties":{"userId":{"description":"ID of the user who is assigned","type":"string"},"username":{"description":"username of the user who is assigned","type":"string"}},"required":["username","userId"],"type":"object","title":"AssignedUser","description":"AssignedUser"},"PickjobDeliveryInformation":{"allOf":[{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},{"required":["channel"]}],"title":"PickjobDeliveryInformation","description":"PickjobDeliveryInformation"},"DocumentHandling":{"properties":{"sendLabel":{"properties":{"enabled":{"default":false,"type":"boolean"}},"required":["enabled"],"type":"object"}},"required":["sendLabel"],"type":"object","title":"DocumentHandling","description":"DocumentHandling"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"ExpectedPickLineItem":{"allOf":[{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},{"properties":{"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"}},"required":["id"],"type":"object"}],"title":"ExpectedPickLineItem","description":"ExpectedPickLineItem"},"PickingZone":{"description":"Zones from which items can be picked","properties":{"zoneRef":{"type":"string"}},"required":["zoneRef"],"title":"PickingZone"},"PickLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickLineItem","description":"PickLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"PickJobSubStatus":{"description":"The reason for the current status, providing type-safe context beyond the status field.","enum":["SHORT_PICKED","ZERO_PICKED","WAITING_FOR_RELEASE_TIME","ORDER_MODIFIED","PROCESS_REROUTE","MANUAL_REROUTE","SHORT_PICK_REROUTE","TIME_TRIGGERED","STOCK_ZEROED","PICK_JOB_ABORTED","RECALCULATION"],"type":"string","xml":{"name":"PickJobSubStatus"},"title":"PickJobSubStatus"},"UserModificationHistory":{"additionalProperties":false,"properties":{"modificationDate":{"format":"date-time","type":"string"},"userId":{"description":"ID of the user who commited this modification","type":"string"},"username":{"description":"Username of the user who commited this modification","type":"string"}},"required":["modificationDate","username"],"type":"object","title":"UserModificationHistory","description":"UserModificationHistory"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/actions":{"post":{"operationId":"pickJobAction","parameters":[{"description":"Reference to the pick job you want to call an action for","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJobActionsParameter"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJob"}}},"description":"Updated PickJob in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"Call pick job action","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickjobs/{pickJobId}/deliverynote

> Get pick job delivery note

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/deliverynote":{"get":{"description":"","operationId":"getPickJobDeliveryNote","parameters":[{"description":"ID of the pick job for which you want to get a deliverynote","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}},{"description":"Provide the localized values for the delivery note. If not provided the default locale is used. For example de_DE","in":"query","name":"locale","schema":{"type":"string"}}],"responses":{"200":{"content":{"application/pdf":{}},"description":"The deliverynote for the given pickjob"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Entity not found"}},"summary":"Get pick job delivery note","tags":["Picking (Operations)"]}}}}
```

## List pick job load units

> Get all load units for the given pick job

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"LoadUnits":{"properties":{"loadUnits":{"description":"found load units matching the search parameters","items":{"$ref":"#/components/schemas/LoadUnit"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"required":["loadUnits","total"],"title":"LoadUnits","type":"object","description":"LoadUnits"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/loadunits":{"get":{"deprecated":false,"description":"Get all load units for the given pick job","operationId":"queryPickJobLoadUnits","parameters":[{"in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnits"}}},"description":"Loadunits were found. The results are in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"List pick job load units","tags":["Picking (Operations)"]}}}}
```

## Create pick job load unit

> Create new load units for the given pick job

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickingLoadUnitForCreation":{"properties":{"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItemForCreation"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"}},"required":["codes"],"title":"PickingLoadUnitForCreation","type":"object","description":"PickingLoadUnitForCreation"},"LoadUnitLineItemForCreation":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["article"],"title":"LoadUnitLineItemForCreation","type":"object","description":"LoadUnitLineItemForCreation"},"LoadUnitLineItemArticle":{"properties":{"titleLocalized":{"$ref":"#/components/schemas/LocaleString"},"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":100,"type":"array"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"},"weight":{"type":"number"}},"required":["tenantArticleId","title"],"title":"LoadUnitLineItemArticle","type":"object","description":"LoadUnitLineItemArticle"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"LoadUnit":{"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"codes":{"description":"List of codes","items":{"type":"string"},"maxItems":100,"type":"array"},"created":{"description":"Creation timestamp","format":"date-time","type":"string"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"description":{"type":"string"},"dimensions":{"$ref":"#/components/schemas/LoadUnitDimensions"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system. But it is not updatable via PUT request","type":"string"},"iconUrl":{"type":"string"},"id":{"description":"Unique identifier for the load unit","type":"string"},"lastModified":{"description":"Last modification timestamp","format":"date-time","type":"string"},"loadUnitLineItems":{"items":{"$ref":"#/components/schemas/LoadUnitLineItem"},"maxItems":100,"type":"array"},"loadUnitTypeRef":{"deprecated":true,"description":"Use operativeContainerTypeRef instead.","type":"string"},"name":{"type":"string"},"operativeContainerTypeRef":{"description":"the reference to the operativeContainerType","type":"string"},"pickJobRefs":{"description":"List of corresponding pickjob Ids","items":{"type":"string"},"maxItems":100,"minItems":1,"type":"array","uniqueItems":true},"stackRef":{"description":"the reference to the stackRef this loadUnit is part of","type":"string"},"storageLocationRef":{"description":"the reference to the storage location this load unit as been placed into","type":"string"},"version":{"description":"Version number for optimistic locking","type":"integer"},"weightLimitInG":{"description":"Maximal weight in gramm(gr) the loadunit can handle.","minimum":1,"type":"number"}},"required":["id","lastModified","created","version","facilityRef","pickJobRefs"],"title":"LoadUnit","type":"object","description":"LoadUnit"},"LoadUnitDimensions":{"properties":{"heightInCm":{"description":"The height of the container (in cm)","type":"number"},"lengthInCm":{"description":"The length of the container (in cm)","type":"number"},"weightInG":{"description":"The weight of the container (in g)","type":"number"},"widthInCm":{"description":"The width of the container (in cm)","type":"number"}},"title":"LoadUnitDimensions","type":"object","description":"LoadUnitDimensions"},"LoadUnitLineItem":{"properties":{"article":{"$ref":"#/components/schemas/LoadUnitLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"globalLineItemId":{"deprecated":true,"description":"Deprecated. Use globalLineItemIds instead.","type":"string"},"globalLineItemIds":{"description":"Global line item ids that refer to this line item","items":{"type":"string"},"maxItems":100,"type":"array"},"id":{"description":"Unique identifier for the line item","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during","items":{"$ref":"#/components/schemas/RecordableAttribute"},"maxItems":100,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":100,"type":"array"}},"required":["id","article"],"title":"LoadUnitLineItem","type":"object","description":"LoadUnitLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/loadunits":{"post":{"deprecated":false,"description":"Create new load units for the given pick job","operationId":"addPickJobLoadUnits","parameters":[{"in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickingLoadUnitForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoadUnit"}}},"description":"The load units was successfully created."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Create pick job load unit","tags":["Picking (Operations)"]}}}}
```

## List available line item substitutes

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Returns all available substitutes for a given pickLineItem.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ResolvedSubstitutes":{"properties":{"substitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"tenantArticleId":{"type":"string"}},"required":["substitutes","tenantArticleId"],"type":"object","xml":{"name":"ResolvedSubstitutes"},"title":"ResolvedSubstitutes","description":"ResolvedSubstitutes"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/picklineitems/{pickLineItemId}/availablesubstitutes":{"get":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Returns all available substitutes for a given pickLineItem.","operationId":"queryPickLineItemsSubstitutes","parameters":[{"description":"Reference to the pick job you to get the available substitutes for","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}},{"description":"Reference to the pickLineItem you to get the available substitutes for","in":"path","name":"pickLineItemId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResolvedSubstitutes"}}},"description":"Available substitutes for given pickLineItem"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"List available line item substitutes","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickjobs/{pickjobId}/returnnote

> Get pick job return note

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickjobId}/returnnote":{"get":{"description":"","operationId":"getReturnNotesForPickjob","parameters":[{"description":"ID of the Pickjob","in":"path","name":"pickjobId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/pdf":{}},"description":"Returns a return note for the pickjob."},"401":{"content":{"application/pdf":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/pdf":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/pdf":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Entity not found"}},"summary":"Get pick job return note","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickjobs/{pickJobId}/transferlabel

> Get pick job transfer label

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/{pickJobId}/transferlabel":{"get":{"description":"","operationId":"getPickJobTransferLabel","parameters":[{"description":"ID of the pick job for which you want to get a transfer label","in":"path","name":"pickJobId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/pdf":{}},"description":"The transfer label for the given pickjob"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Entity not found"}},"summary":"Get pick job transfer label","tags":["Picking (Operations)"]}}}}
```

## List pick jobs (search)

> This part of the API is in Beta status. For details please check the \<a href="<https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta>" target="\_blank">api-release-life-cycle documentation\</a>.\<br />\<br />Search for PickJob

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickJobSearchPayload":{"properties":{"after":{"deprecated":false,"description":"The cursor to start after for forward pagination. The value is provided in the `pageInfo.endCursor` field of the response. Cannot be used with `before` or `last`.","type":"string"},"before":{"description":"The cursor to start before for backward pagination. The value is provided in the `pageInfo.startCursor` field of the response. Cannot be used with `after` or `size` (first).","type":"string"},"last":{"description":"Number of items to return for backward pagination. Cannot be used with 'size' (first). Default: 20.","maximum":250,"minimum":1,"type":"number"},"options":{"$ref":"#/components/schemas/SearchOptions"},"query":{"$ref":"#/components/schemas/PickJobSearchQuery"},"size":{"description":"Number of items to return for forward pagination. Cannot be used with 'last'. Default: 20.","maximum":250,"minimum":1,"type":"number"},"sort":{"description":"Use for sorting the result.","items":{"$ref":"#/components/schemas/PickJobSort"},"maxItems":1,"minItems":1,"type":"array"},"startAfterId":{"deprecated":true,"description":"The ID to start after. Deprecated, use `after` with the value provided in `pageInfo.endCursor` instead.","type":"string"}},"required":["query"],"title":"PickJobSearchPayload","type":"object","description":"PickJobSearchPayload"},"SearchOptions":{"properties":{"withTotal":{"description":"Set to true to include the total count of items in the search result.","type":"boolean"}},"title":"SearchOptions","type":"object","description":"SearchOptions"},"PickJobSearchQuery":{"properties":{"and":{"items":{"$ref":"#/components/schemas/PickJobSearchQuery"},"maxItems":500,"type":"array"},"consumerName":{"allOf":[{"$ref":"#/components/schemas/StringSearchFilter"}],"description":"Search by consumerName"},"created":{"allOf":[{"$ref":"#/components/schemas/DateFilter"}],"description":"Search entries by created. Applying a narrow and well-considered filter value is strongly recommended, as it can greatly improve response times, especially when working with large datasets."},"facilityRef":{"allOf":[{"$ref":"#/components/schemas/StringEqFilter"}],"description":"Search by facilityRef"},"id":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by id"},"lastModified":{"allOf":[{"$ref":"#/components/schemas/DateFilter"}],"description":"Search by lastModified"},"or":{"items":{"$ref":"#/components/schemas/PickJobSearchQuery"},"maxItems":500,"type":"array"},"orderRef":{"allOf":[{"$ref":"#/components/schemas/StringEqFilter"}],"description":"Search by orderRef"},"preferredPickingMethods":{"allOf":[{"$ref":"#/components/schemas/PickJobPickingMethodEnumEnumListFilter"}],"description":"Search by preferredPickingMethods"},"status":{"allOf":[{"$ref":"#/components/schemas/PickJobStatusEnumFilter"}],"description":"Search by status"},"targetTime":{"allOf":[{"$ref":"#/components/schemas/DateFilter"}],"description":"Search by targetTime"},"tenantArticleIds":{"allOf":[{"$ref":"#/components/schemas/StringListFilter"}],"description":"Search by tenantArticleIds"},"tenantOrderId":{"allOf":[{"$ref":"#/components/schemas/StringFilter"}],"description":"Search by tenantOrderId"},"transfers":{"allOf":[{"$ref":"#/components/schemas/PickJobTransfersListFilter"}],"description":"Nested list search by transfers"}},"title":"PickJobSearchQuery","type":"object","description":"PickJobSearchQuery"},"StringSearchFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"like":{"description":"Search by regex pattern","maxLength":256,"type":"string"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringSearchFilter","type":"object","description":"StringSearchFilter"},"DateFilter":{"properties":{"after":{"description":"Search using ISO‑8601 dates relative to today. Prefix with “–” for past dates. Results include events after the specified date. Example: “–P1D” for yesterday, “P1W” for next week.","maxLength":256,"type":"string"},"before":{"description":"Search using ISO‑8601 dates relative to today. Prefix with “–” for past dates. Results include events before the specified date. Example: “–P1D” for yesterday, “P1W” for next week.","maxLength":256,"type":"string"},"eq":{"format":"date-time","type":"string"},"gt":{"format":"date-time","type":"string"},"gte":{"format":"date-time","type":"string"},"lt":{"format":"date-time","type":"string"},"lte":{"format":"date-time","type":"string"},"notEq":{"format":"date-time","type":"string"}},"title":"DateFilter","type":"object","description":"DateFilter"},"StringEqFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"notEq":{"maxLength":256,"type":"string"}},"title":"StringEqFilter","type":"object","description":"StringEqFilter"},"StringFilter":{"properties":{"eq":{"maxLength":256,"type":"string"},"in":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"},"notEq":{"maxLength":256,"type":"string"},"notIn":{"items":{"maxLength":256,"type":"string"},"maxItems":25,"type":"array"}},"title":"StringFilter","type":"object","description":"StringFilter"},"PickJobPickingMethodEnumEnumListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/PickJobPickingMethodEnumEnumFilter"}],"description":"Search by preferredPickingMethods"}},"title":"PickJobPickingMethodEnumEnumListFilter","type":"object","description":"PickJobPickingMethodEnumEnumListFilter"},"PickJobPickingMethodEnumEnumFilter":{"properties":{"eq":{"description":"Search by preferredPickingMethods","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string"},"in":{"description":"Search by preferredPickingMethods","items":{"enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by preferredPickingMethods","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string"}},"title":"PickJobPickingMethodEnumEnumFilter","type":"object","description":"PickJobPickingMethodEnumEnumFilter"},"PickJobStatusEnumFilter":{"properties":{"eq":{"description":"Search by status","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string"},"in":{"description":"Search by status","items":{"enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string"},"maxItems":500,"type":"array"},"notEq":{"description":"Search by status","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string"}},"title":"PickJobStatusEnumFilter","type":"object","description":"PickJobStatusEnumFilter"},"StringListFilter":{"properties":{"contains":{"$ref":"#/components/schemas/StringEqFilter"}},"title":"StringListFilter","type":"object","description":"StringListFilter"},"PickJobTransfersListFilter":{"properties":{"contains":{"allOf":[{"$ref":"#/components/schemas/PickJobTransfersFilter"}],"description":"Contains returns if at least one entry matches"}},"title":"PickJobTransfersListFilter","type":"object","description":"PickJobTransfersListFilter"},"PickJobTransfersFilter":{"properties":{"id":{"allOf":[{"$ref":"#/components/schemas/StringEqFilter"}],"description":"Search by id"}},"title":"PickJobTransfersFilter","type":"object","description":"PickJobTransfersFilter"},"PickJobSort":{"properties":{"created":{"enum":["ASC","DESC"],"type":"string"},"lastModified":{"enum":["ASC","DESC"],"type":"string"},"targetTime":{"enum":["ASC","DESC"],"type":"string"},"tenantOrderId":{"enum":["ASC","DESC"],"type":"string"}},"title":"PickJobSort","type":"object","description":"PickJobSort"},"PickJobPaginatedResult":{"properties":{"pageInfo":{"allOf":[{"$ref":"#/components/schemas/PageInfo"}],"description":"Pagination information for the search result."},"pickJobs":{"items":{"$ref":"#/components/schemas/PickJob"},"type":"array"},"total":{"description":"The total number of items matching the search criteria. Only filled, if withTotal is set to true in the search options.","minimum":0,"type":"number"}},"required":["pageInfo","pickJobs"],"title":"PickJobPaginatedResult","type":"object","description":"PickJobPaginatedResult"},"PageInfo":{"properties":{"endCursor":{"description":"The cursor to use to fetch the next page of items. Use with parameter `after`.","type":"string"},"hasNextPage":{"description":"If true, there are more items after the current page.","type":"boolean"},"hasPreviousPage":{"description":"If true, there are more items before the current page.","type":"boolean"},"startCursor":{"description":"The cursor to use to fetch the previous page of items.","type":"string"}},"required":["hasNextPage","hasPreviousPage","startCursor","endCursor"],"title":"PageInfo","type":"object","description":"PageInfo"},"PickJob":{"allOf":[{"$ref":"#/components/schemas/PickJobForCreation"},{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"anonymized":{"description":"Indicates if gdpr related data was anonymized","type":"boolean"},"assignedUsers":{"description":"Assigned users for this entity","items":{"$ref":"#/components/schemas/AssignedUser"},"type":"array"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformation"},"documentHandling":{"$ref":"#/components/schemas/DocumentHandling"},"documentsRef":{"description":"Reference to the documents collection from this entity","type":"string"},"editor":{"$ref":"#/components/schemas/Editor"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItem"},"type":"array"},"id":{"description":"The id of this pickjob. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"pickingZones":{"items":{"$ref":"#/components/schemas/PickingZone"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItem"},"type":"array"},"pickRunRef":{"description":"Pick run id to which the pick job belongs","type":"string"},"resetBlocked":{"default":false,"description":"Indicates if pickJob can still be resetted or restarted","type":"boolean"},"shortId":{"description":"A short identifier that helps assigning a pickJob to a customer. This is automatically created during creation.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"statusReason":{"deprecated":true,"description":"deprecated: Use subStatus instead. Maintained for backward compatibility.","type":"string"},"subStatus":{"$ref":"#/components/schemas/PickJobSubStatus","description":"The reason for the current status."},"usersModificationHistory":{"items":{"$ref":"#/components/schemas/UserModificationHistory"},"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["id","status","pickLineItems","shortId","workflowInformation","deliveryinformation","documentsRef"],"type":"object"}],"title":"PickJob","description":"PickJob"},"PickJobForCreation":{"additionalProperties":false,"properties":{"assignedUsers":{"description":"Assigned users for this entity","items":{"anyOf":[{"$ref":"#/components/schemas/AssignedUserForCreationByName"},{"$ref":"#/components/schemas/AssignedUserForCreationById"}]},"type":"array"},"customAttributes":{"description":"Attributes that can be added to the pickjob. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"deliveryinformation":{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},"expectedPickLineItems":{"items":{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},"minItems":0,"type":"array"},"facilityRef":{"description":"The id of the facility reference. The given ID has to be present in the system.","type":"string"},"operativeProcessRef":{"type":"string"},"orderDate":{"description":"The date this order was created at the supplying system.","format":"date-time","type":"string"},"orderRef":{"description":"The id of the order reference. The given ID has to be present in the system.","type":"string"},"paymentInformation":{"$ref":"#/components/schemas/PaymentInformation"},"pickingTimes":{"$ref":"#/components/schemas/PickJobPickingTimes"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickLineItemForCreation"},"minItems":0,"type":"array"},"preferredPickingMethods":{"description":"Preferred way of picking a given pickJob.","items":{"$ref":"#/components/schemas/PickingMethodEnum"},"type":"array"},"processId":{"description":"Id of the global process related to this entity. For example used for starting the GDPR process and others.","type":"string"},"routingPlanRef":{"description":"Reference to the routingplan which created this pickjob","type":"string"},"shortId":{"description":"A short identifier that helps assigning a pick job to a customer.","type":"string"},"status":{"$ref":"#/components/schemas/PickJobStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"minItems":0,"type":"array"},"tenantOrderId":{"description":"Field can be used as a reference number in foreign systems, for example as a reference to the source system's identifier for this order.","type":"string"},"transfers":{"items":{"$ref":"#/components/schemas/OperativeTransfer"},"minItems":0,"type":"array"},"workflowInformation":{"oneOf":[{"$ref":"#/components/schemas/WorkflowInformation"},{"$ref":"#/components/schemas/WorkflowUnavailable"}]},"tags":{"description":"Tags can only be set when there is no process related with this pickJob. Setting processId and tags will lead to an validationError.","items":{"$ref":"#/components/schemas/TagReference"},"minItems":1,"type":"array"}},"required":["orderDate","facilityRef","pickLineItems"],"type":"object","xml":{"name":"Pickjob"},"title":"PickJobForCreation","description":"PickJobForCreation"},"AssignedUserForCreationByName":{"description":"Create a assigned user by giving a valid name","properties":{"username":{"description":"username of the user should be assigned","type":"string"}},"required":["username"],"title":"AssignedUserForCreationByName","type":"object"},"AssignedUserForCreationById":{"description":"Create a assigned user by giving a valid id","properties":{"userId":{"description":"userId of the user should be assigned","type":"string"}},"required":["userId"],"title":"AssignedUserForCreationById","type":"object"},"PickjobDeliveryInformationForCreation":{"properties":{"channel":{"enum":["COLLECT","SHIPPING"],"type":"string"},"details":{"properties":{"collect":{"properties":{"identifier":{"description":"Includes information about Click & Collect recipient","type":"string"},"paid":{"default":false,"description":"Indicates if the order is already paid.","type":"boolean"}},"type":"object"},"shipping":{"properties":{"carrierKey":{"type":"string"},"carrierProduct":{"description":"Desired product of given carrier to choose when ordering a label, this is specific to a carrier","type":"string"},"carrierProductCategory":{"$ref":"#/components/schemas/CarrierProductCategory"},"carrierServices":{"items":{"$ref":"#/components/schemas/CarrierServices"},"type":"array"},"identifier":{"description":"Includes information on how to identify Ship from Store recipient (Name, PIN, Reference number, ...)","type":"string"},"invoiceAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"postalAddress":{"$ref":"#/components/schemas/ConsumerAddress"},"recipientaddress":{"$ref":"#/components/schemas/ConsumerAddress"},"serviceLevel":{"description":"TBD","enum":["DELIVERY","SAMEDAY"],"type":"string"}},"type":"object"}},"type":"object"},"targetTime":{"description":"At which time the result is expected.","format":"date-time","type":"string"},"targetTimeBaseDate":{"description":"The start date for the targetTime calculation.","format":"date-time","type":"string"}},"type":"object","title":"PickjobDeliveryInformationForCreation","description":"PickjobDeliveryInformationForCreation"},"CarrierProductCategory":{"enum":["STANDARD","EXPRESS","VALUE","FORWARDING"],"type":"string","title":"CarrierProductCategory","description":"CarrierProductCategory"},"CarrierServices":{"enum":["SIGNATURE","CUSTOMER_SIGNATURE","ADULT_SIGNATURE","SATURDAY_DELIVERY","IDENTITY_CHECK_COMPANY","IDENTITY_CHECK_PRIVATE","ADDITIONAL_TRANSPORTATION_INSURANCE","IDENTITY_AGE_CHECK_18","NO_NEIGHBOR_DELIVERY","HANDOVER_TO_RECIPIENT_ONLY"],"type":"string","title":"CarrierServices","description":"CarrierServices"},"ConsumerAddress":{"allOf":[{"$ref":"#/components/schemas/Address"}],"properties":{"addressType":{"$ref":"#/components/schemas/AddressType"},"companyName":{"type":"string"},"coordinates":{"$ref":"#/components/schemas/Coordinates"},"email":{"format":"email","minLength":1,"type":"string"},"firstName":{"type":"string"},"lastName":{"type":"string"},"personalTitle":{"type":"string"},"salutation":{"type":"string"}},"type":"object","title":"ConsumerAddress","description":"ConsumerAddress"},"Address":{"properties":{"additionalAddressInfo":{"type":"string"},"city":{"pattern":"^.+$","type":"string"},"country":{"description":"A two-digit country code as per ISO 3166-1 alpha-2","pattern":"^[A-Z]{2}$","type":"string"},"customAttributes":{"description":"Attributes that can be added to the address. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"houseNumber":{"pattern":"^.+$","type":"string"},"phoneNumbers":{"items":{"properties":{"customAttributes":{"description":"Attributes that can be added to the phonenumber. These attributes cannot be used within fulfillment processes, but it could be useful to have the informations carried here.","type":"object"},"label":{"description":"Can be used to give a description for the number, like \"private\", \"business number\", etc.","type":"string"},"type":{"enum":["MOBILE","PHONE"],"type":"string"},"value":{"description":"The number itself. We do not enforce any format (yet).","type":"string"}},"required":["value","type"],"type":"object"},"maxItems":500,"type":"array"},"postalCode":{"pattern":"^.+$","type":"string"},"province":{"pattern":"^.+$","type":"string"},"street":{"pattern":"^.+$","type":"string"}},"required":["street","city","postalCode","country"],"type":"object","title":"Address","description":"Address"},"AddressType":{"description":"Type of this address, used e.g. for communication with the carrier. Use POSTAL_ADDRESS for the address where the order should be shipped to, INVOICE_ADDRESS for the address where the invoice is sent to and PARCEL_LOCKER if a parcel locker is used for this order.","enum":["POSTAL_ADDRESS","PARCEL_LOCKER","INVOICE_ADDRESS"],"type":"string","title":"AddressType"},"Coordinates":{"description":"Coordinates of the WGS84 geodetic reference system in Mercator projection, as used e.g. by the Google Maps API","properties":{"lat":{"description":"Latitude value","type":"number"},"lon":{"description":"Longitude value","type":"number"}},"required":["lat","lon"],"type":"object","title":"Coordinates"},"ExpectedPickLineItemForCreation":{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"transferId":{"type":"string"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["transferId","quantity","article"],"title":"ExpectedPickLineItemForCreation","description":"ExpectedPickLineItemForCreation"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PaymentInformation":{"properties":{"currency":{"description":"The currency in which the consumer paid with","type":"string"}},"type":"object","title":"PaymentInformation","description":"PaymentInformation"},"PickJobPickingTimes":{"additionalProperties":false,"properties":{"startLatestAt":{"description":"The date this pickJob should be started at last.","format":"date-time","type":"string"}},"type":"object","title":"PickJobPickingTimes","description":"PickJobPickingTimes"},"PickLineItemForCreation":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/MandatoryLineItemForCreation"}],"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"},"type":"array"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["quantity","article"],"type":"object","title":"PickLineItemForCreation","description":"PickLineItemForCreation"},"MandatoryLineItemForCreation":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttributeForCreation"},"maxItems":50,"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"maxItems":50,"type":"array"}},"required":["article","quantity"],"title":"MandatoryLineItemForCreation","type":"object","description":"MandatoryLineItemForCreation"},"RecordableAttributeForCreation":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","nullable":true,"type":"string"}},"required":["keyLocalized","recordingRule"],"title":"RecordableAttributeForCreation","type":"object","description":"RecordableAttributeForCreation"},"PickingMethodEnum":{"description":"Way in which the picking should be handled Deprecated: BATCH_PICKING, use BATCH instead","enum":["SINGLE_ORDER","MULTI_ORDER","BATCH_PICKING","BATCH"],"type":"string","title":"PickingMethodEnum"},"PickJobStatus":{"description":"The status of a pickjob.","enum":["ABORTED","OPEN","IN_PROGRESS","CLOSED","PICKED","REROUTED","REJECTED","RESTOWED","EXPIRED","CANCELED","OBSOLETE","WAITING_FOR_INPUT","PAUSED"],"type":"string","xml":{"name":"PickJobStatus"},"title":"PickJobStatus"},"OperativeTransfer":{"additionalProperties":false,"properties":{"id":{"description":"The id of the transfer","type":"string"},"type":{"description":"The type of the transfer","enum":["SUPPLIER","RECEIVER"],"type":"string"}},"required":["id","type"],"title":"OperativeTransfer","type":"object","description":"OperativeTransfer"},"WorkflowInformation":{"additionalProperties":false,"properties":{"instanceRef":{"description":"The id identifying the workflow instance this entity belongs to.","type":"string"},"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[true],"type":"boolean"},"nodeRef":{"description":"The id identifying the node within the workflow instance tha this entity belongs to.","type":"string"}},"title":"WorkflowInformation","type":"object","description":"WorkflowInformation"},"WorkflowUnavailable":{"additionalProperties":false,"properties":{"isAvailable":{"description":"Explicitly states if this entity is part of a workflow.","enum":[false],"type":"boolean"}},"title":"WorkflowUnavailable","type":"object","description":"WorkflowUnavailable"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"AssignedUser":{"properties":{"userId":{"description":"ID of the user who is assigned","type":"string"},"username":{"description":"username of the user who is assigned","type":"string"}},"required":["username","userId"],"type":"object","title":"AssignedUser","description":"AssignedUser"},"PickjobDeliveryInformation":{"allOf":[{"$ref":"#/components/schemas/PickjobDeliveryInformationForCreation"},{"required":["channel"]}],"title":"PickjobDeliveryInformation","description":"PickjobDeliveryInformation"},"DocumentHandling":{"properties":{"sendLabel":{"properties":{"enabled":{"default":false,"type":"boolean"}},"required":["enabled"],"type":"object"}},"required":["sendLabel"],"type":"object","title":"DocumentHandling","description":"DocumentHandling"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"ExpectedPickLineItem":{"allOf":[{"$ref":"#/components/schemas/ExpectedPickLineItemForCreation"},{"properties":{"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"}},"required":["id"],"type":"object"}],"title":"ExpectedPickLineItem","description":"ExpectedPickLineItem"},"PickingZone":{"description":"Zones from which items can be picked","properties":{"zoneRef":{"type":"string"}},"required":["zoneRef"],"title":"PickingZone"},"PickLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickLineItem","description":"PickLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"PickJobSubStatus":{"description":"The reason for the current status, providing type-safe context beyond the status field.","enum":["SHORT_PICKED","ZERO_PICKED","WAITING_FOR_RELEASE_TIME","ORDER_MODIFIED","PROCESS_REROUTE","MANUAL_REROUTE","SHORT_PICK_REROUTE","TIME_TRIGGERED","STOCK_ZEROED","PICK_JOB_ABORTED","RECALCULATION"],"type":"string","xml":{"name":"PickJobSubStatus"},"title":"PickJobSubStatus"},"UserModificationHistory":{"additionalProperties":false,"properties":{"modificationDate":{"format":"date-time","type":"string"},"userId":{"description":"ID of the user who commited this modification","type":"string"},"username":{"description":"Username of the user who commited this modification","type":"string"}},"required":["modificationDate","username"],"type":"object","title":"UserModificationHistory","description":"UserModificationHistory"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickjobs/search":{"post":{"deprecated":false,"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Search for PickJob","operationId":"searchPickJob","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJobSearchPayload"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickJobPaginatedResult"}}},"description":"Your search result"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"List pick jobs (search)","tags":["Picking (Operations)"]}}}}
```

## POST /api/pickruns

> Create pick run

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickRunForCreation":{"properties":{"facilityRef":{"type":"string"},"pickJobRefs":{"items":{"type":"string"},"minItems":1,"type":"array"},"pickRunType":{"$ref":"#/components/schemas/PickRunType"},"status":{"$ref":"#/components/schemas/PickRunStatus"}},"required":["pickJobRefs","facilityRef"],"type":"object","title":"PickRunForCreation","description":"PickRunForCreation"},"PickRunType":{"default":"batchPick","description":"Deprecated: batchPick, use batch instead Deprecated: multiOrderPick, use multiOrder instead","enum":["multiOrderPick","multiOrder","batchPick","batch"],"type":"string","title":"PickRunType"},"PickRunStatus":{"description":"The state of the PickRun","enum":["OPEN","IN_PROGRESS","CLOSED","PAUSED","CANCELED","OBSOLETE"],"type":"string","title":"PickRunStatus"},"PickRun":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"editor":{"$ref":"#/components/schemas/Editor"},"facilityRef":{"type":"string"},"id":{"type":"string"},"pickJobRefs":{"items":{"type":"string"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickRunLineItem"},"type":"array"},"pickRunType":{"$ref":"#/components/schemas/PickRunType"},"status":{"$ref":"#/components/schemas/PickRunStatus"}}}],"required":["pickLineItems","pickJobRefs","facilityRef","status","id"],"type":"object","title":"PickRun","description":"PickRun"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"PickRunLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemIds":{"items":{"description":"Global line item ids that refer to this line item","type":"string"},"type":"array"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"pickJobRef":{"type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickRunLineItem","description":"PickRunLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickruns":{"post":{"description":"","operationId":"addPickRun","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRunForCreation"}}},"required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRun"}}},"description":"The PickRun was successfully created. The Location header contains the URL of it."},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Invalid input. See response for details"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"}},"summary":"Create pick run","tags":["Picking (Operations)"]}}}}
```

## GET /api/pickruns/{pickRunId}

> Get pick run

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickRun":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"editor":{"$ref":"#/components/schemas/Editor"},"facilityRef":{"type":"string"},"id":{"type":"string"},"pickJobRefs":{"items":{"type":"string"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickRunLineItem"},"type":"array"},"pickRunType":{"$ref":"#/components/schemas/PickRunType"},"status":{"$ref":"#/components/schemas/PickRunStatus"}}}],"required":["pickLineItems","pickJobRefs","facilityRef","status","id"],"type":"object","title":"PickRun","description":"PickRun"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"PickRunLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemIds":{"items":{"description":"Global line item ids that refer to this line item","type":"string"},"type":"array"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"pickJobRef":{"type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickRunLineItem","description":"PickRunLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PickRunType":{"default":"batchPick","description":"Deprecated: batchPick, use batch instead Deprecated: multiOrderPick, use multiOrder instead","enum":["multiOrderPick","multiOrder","batchPick","batch"],"type":"string","title":"PickRunType"},"PickRunStatus":{"description":"The state of the PickRun","enum":["OPEN","IN_PROGRESS","CLOSED","PAUSED","CANCELED","OBSOLETE"],"type":"string","title":"PickRunStatus"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickruns/{pickRunId}":{"get":{"description":"","operationId":"getPickRun","parameters":[{"description":"id of pickRun","in":"path","name":"pickRunId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRun"}}},"description":"PickRun is found."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"Get pick run","tags":["Picking (Operations)"]}}}}
```

## PATCH /api/pickruns/{pickRunId}

> Update pick run

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickRunPatchAction":{"properties":{"actions":{"items":{"anyOf":[{"$ref":"#/components/schemas/ModifyPickRunLineItem"},{"$ref":"#/components/schemas/StartPickRun"},{"$ref":"#/components/schemas/CancelPickRun"},{"$ref":"#/components/schemas/FinishPickRun"}]},"minItems":1,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version","actions"],"type":"object","xml":{"name":"PickRunPatchAction"},"title":"PickRunPatchAction","description":"PickRunPatchAction"},"ModifyPickRunLineItem":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"properties":{"action":{"description":"Use value 'ModifyPickRunLineItem', because you want to modify a pick line item","enum":["ModifyPickRunLineItem"],"type":"string"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForUpdate"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/ShortPickReasonForUpsert"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"}},"required":["id","action"],"type":"object"}],"description":"Action to modify a lineitem of a pickrun","title":"ModifyPickRunLineItem","xml":{"name":"ModifyPickRunLineItem"}},"AbstractModificationAction":{"discriminator":{"propertyName":"action"},"properties":{"action":{"description":"","enum":["AddAllowedValueToTag","ModifyPickJob","ModifyPickJobLastEditor","RestartPickJob","ResetPickJob","CancelPickRun","CancelHandoverjob","AbortPickJob","FinishPickRun","StartPickRun","ModifyPickLineItem","ModifyPickRunLineItem","ModifyPackJob","PausePackJob","ModifyPackLineItem","SplitLineItemsPackJob","ModifyFacility","ModifyListing","ModifyRetainedOfflineStock","ModifyListingReactivationAfter","ModifyUser","ModifyShipment","ModifyHandoverjob","ModifyCarrier","ModifyShortpick","ModifyRoutingPlan","ModifyFence","ModifyRating","ModifyTimingMode","ModifyGlobalRoutingConfiguration","ModifyOrderSplit","ModifyPrioritization","ModifyFeature","ModifyParcel","ModifyParcelLoadUnit","ModifyRestowItem","RemovePickJobFromPickRun","ModifyPartialStock","AddTagsToProcess","AssignFacilityToProcess","UpdateGdprCleanupDateAction","ModifyStorageLocation","ModifyPackingContainerType","ModifyPackingContainerTypeIcon","ReplaceCodesInPackingTargetContainer","AddLineItemToPackingTargetContainer","RemoveLineItemFromPackingTargetContainer","UpdateLineItemOnPackingTargetContainer","UpdatePackingTargetContainerLineItemRecordableAttributes","UpdatePackingTargetContainerStorageLocation","ModifyCustomService","UnlockOrder"],"type":"string"}},"required":["action"],"type":"object","xml":{"name":"AbstractModificationAction"},"title":"AbstractModificationAction","description":"AbstractModificationAction"},"PickJobLineItemPartialStockLocationForUpdate":{"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","picked"],"type":"object","title":"PickJobLineItemPartialStockLocationForUpdate","description":"PickJobLineItemPartialStockLocationForUpdate"},"ShortPickReasonForUpsert":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"}},"type":"object","title":"ShortPickReasonForUpsert","description":"ShortPickReasonForUpsert"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"StartPickRun":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'StartPickRun', because you want to start a pickrun","enum":["StartPickRun"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickruns/:id/actions instead","title":"StartPickRun","xml":{"name":"StartPickRun"}},"CancelPickRun":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'CancelPickRun', because you want to cancel a pickrun","enum":["CancelPickRun"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickruns/:id/actions instead","title":"CancelPickRun","xml":{"name":"CancelPickRun"}},"FinishPickRun":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'FinishPickRun', because you want to finish a pickrun","enum":["FinishPickRun"],"type":"string"}},"required":["action"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use api/pickruns/:id/actions instead","title":"FinishPickRun","xml":{"name":"FinishPickRun"}},"PickRun":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"editor":{"$ref":"#/components/schemas/Editor"},"facilityRef":{"type":"string"},"id":{"type":"string"},"pickJobRefs":{"items":{"type":"string"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickRunLineItem"},"type":"array"},"pickRunType":{"$ref":"#/components/schemas/PickRunType"},"status":{"$ref":"#/components/schemas/PickRunStatus"}}}],"required":["pickLineItems","pickJobRefs","facilityRef","status","id"],"type":"object","title":"PickRun","description":"PickRun"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"PickRunLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemIds":{"items":{"description":"Global line item ids that refer to this line item","type":"string"},"type":"array"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"pickJobRef":{"type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickRunLineItem","description":"PickRunLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PickRunType":{"default":"batchPick","description":"Deprecated: batchPick, use batch instead Deprecated: multiOrderPick, use multiOrder instead","enum":["multiOrderPick","multiOrder","batchPick","batch"],"type":"string","title":"PickRunType"},"PickRunStatus":{"description":"The state of the PickRun","enum":["OPEN","IN_PROGRESS","CLOSED","PAUSED","CANCELED","OBSOLETE"],"type":"string","title":"PickRunStatus"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickruns/{pickRunId}":{"patch":{"description":"","operationId":"patchPickRun","parameters":[{"description":"id of pickRun","in":"path","name":"pickRunId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRunPatchAction"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRun"}}},"description":"The updated PickRun."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Version conflict"}},"summary":"Update pick run","tags":["Picking (Operations)"]}}}}
```

## POST /api/pickruns/{pickRunId}/actions

> Call pick run action

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickRunActionsParameter":{"anyOf":[{"$ref":"#/components/schemas/PickRunStartActionParameter"},{"$ref":"#/components/schemas/PickRunFinishActionParameter"},{"$ref":"#/components/schemas/PickRunCancelActionParameter"},{"$ref":"#/components/schemas/PickRunPauseActionParameter"},{"$ref":"#/components/schemas/PickRunResumeActionParameter"},{"$ref":"#/components/schemas/PickRunRemovePickJobActionParameter"},{"$ref":"#/components/schemas/PickRunSplitLineItemsActionParameter"},{"$ref":"#/components/schemas/TakeOverPickRunActionParameter"}],"title":"PickRunActionsParameter","description":"PickRunActionsParameter"},"PickRunStartActionParameter":{"additionalProperties":false,"description":"Action to start a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunStartActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickRunStartActionParameter"},"PickRunStartActionEnum":{"enum":["START"],"type":"string","title":"PickRunStartActionEnum","description":"PickRunStartActionEnum"},"PickRunFinishActionParameter":{"additionalProperties":false,"description":"Action to finish a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunFinishActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickRunFinishActionParameter"},"PickRunFinishActionEnum":{"enum":["FINISH"],"type":"string","title":"PickRunFinishActionEnum","description":"PickRunFinishActionEnum"},"PickRunCancelActionParameter":{"additionalProperties":false,"description":"Action to cancel a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunCancelActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickRunCancelActionParameter"},"PickRunCancelActionEnum":{"enum":["CANCEL"],"type":"string","title":"PickRunCancelActionEnum","description":"PickRunCancelActionEnum"},"PickRunPauseActionParameter":{"additionalProperties":false,"description":"Action to pause a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunPauseActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickRunPauseActionParameter"},"PickRunPauseActionEnum":{"enum":["PAUSE"],"type":"string","title":"PickRunPauseActionEnum","description":"PickRunPauseActionEnum"},"PickRunResumeActionParameter":{"additionalProperties":false,"description":"Action to resume a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunResumeActionEnum"},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version"],"title":"PickRunResumeActionParameter"},"PickRunResumeActionEnum":{"enum":["RESUME"],"type":"string","title":"PickRunResumeActionEnum","description":"PickRunResumeActionEnum"},"PickRunRemovePickJobActionParameter":{"additionalProperties":false,"description":"Action to Remove a Pickjob from a PickRun.","properties":{"name":{"$ref":"#/components/schemas/PickRunRemovePickJobActionEnum"},"payload":{"additionalProperties":false,"properties":{"pickJobId":{"type":"string"}},"required":["pickJobId"]},"version":{"description":"Version of the entity to be changed","minimum":0,"type":"integer"}},"required":["name","version","payload"],"title":"PickRunRemovePickJobActionParameter"},"PickRunRemovePickJobActionEnum":{"enum":["REMOVE_PICK_JOB"],"type":"string","title":"PickRunRemovePickJobActionEnum","description":"PickRunRemovePickJobActionEnum"},"PickRunSplitLineItemsActionParameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/components/schemas/PickRunSplitLineItemsActionEnum"},"splitLineItemsInfo":{"items":{"$ref":"#/components/schemas/PickRunSplitLineItemsInfo"},"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["name","version","splitLineItemsInfo"],"title":"PickRunSplitLineItemsActionParameter","type":"object","description":"PickRunSplitLineItemsActionParameter"},"PickRunSplitLineItemsActionEnum":{"enum":["SPLIT_LINES_PICK_RUN"],"type":"string","title":"PickRunSplitLineItemsActionEnum","description":"PickRunSplitLineItemsActionEnum"},"PickRunSplitLineItemsInfo":{"additionalProperties":false,"properties":{"lineItemId":{"description":"references the id of the pickLineItem of a pickRun","type":"string"},"picked":{"description":"The amount of articles that were picked for this line item.","format":"int64","minimum":0,"type":"integer"},"quantity":{"description":"quantity of the specific item that has been ordered","minimum":1,"type":"integer"}},"required":["lineItemId","quantity","picked"],"type":"object","title":"PickRunSplitLineItemsInfo","description":"PickRunSplitLineItemsInfo"},"TakeOverPickRunActionParameter":{"additionalProperties":false,"properties":{"name":{"$ref":"#/components/schemas/TakeOverPickRunActionEnum"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","type":"integer"}},"required":["name","version"],"title":"TakeOverPickRunActionParameter","type":"object","description":"TakeOverPickRunActionParameter"},"TakeOverPickRunActionEnum":{"enum":["TAKE_OVER_PICK_RUN"],"type":"string","title":"TakeOverPickRunActionEnum","description":"TakeOverPickRunActionEnum"},"PickRun":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"properties":{"editor":{"$ref":"#/components/schemas/Editor"},"facilityRef":{"type":"string"},"id":{"type":"string"},"pickJobRefs":{"items":{"type":"string"},"type":"array"},"pickLineItems":{"items":{"$ref":"#/components/schemas/PickRunLineItem"},"type":"array"},"pickRunType":{"$ref":"#/components/schemas/PickRunType"},"status":{"$ref":"#/components/schemas/PickRunStatus"}}}],"required":["pickLineItems","pickJobRefs","facilityRef","status","id"],"type":"object","title":"PickRun","description":"PickRun"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"Editor":{"properties":{"userId":{"description":"ID of the user who edits the pickjob","type":"string"},"username":{"description":"username of the user who edits the pickjob","type":"string"}},"required":["username"],"type":"object","title":"Editor","description":"Editor"},"PickRunLineItem":{"allOf":[{"$ref":"#/components/schemas/MandatoryLineItem"},{"properties":{"allowedSubstitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"article":{"$ref":"#/components/schemas/PickLineItemArticle"},"customAttributes":{"description":"Attributes that can be added to the pick line. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemIds":{"items":{"description":"Global line item ids that refer to this line item","type":"string"},"type":"array"},"id":{"description":"The id of this lineItem. It is generated during creation automatically and suits as the primary identifier of the described entity.","type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"originId":{"description":"The id of the line item this line item was originated from, before any split has happened. This can be used to restore the ‘pre-split’ status.","nullable":true,"type":"string"},"partialStockLocations":{"description":"Indicates where the items to pick could be found and from where the picking should be started.","items":{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocation"}},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"pickJobLineItemRef":{"description":"used for line items in pick runs to be split up correctly again","type":"string"},"pickJobRef":{"type":"string"},"quantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":1,"type":"integer"},"recordableAttributes":{"items":{"$ref":"#/components/schemas/RecordableAttribute"},"nullable":true,"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"scannedCodes":{"items":{"$ref":"#/components/schemas/PickLineItemScannedCode"},"minimum":0,"type":"array"},"scanningRule":{"$ref":"#/components/schemas/ScanningRuleConfiguration","deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />Deprecated: Use scanningRules instead. This value indicates which scanning rule should be applied for this pick line. Only generated on demand on separate call, no persistence."},"scanningRules":{"$ref":"#/components/schemas/PickLineItemScanningRules"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"quantity of the specific article that has been ordered","format":"int64","minimum":0,"type":"integer"},"shortPickReason":{"$ref":"#/components/schemas/PickLineShortPickReason"},"status":{"$ref":"#/components/schemas/PickLineItemStatus"},"stickers":{"items":{"$ref":"#/components/schemas/Sticker"},"type":"array"},"stockEmptied":{"type":"boolean"},"substituteLineItems":{"description":"This part of the API is in Beta status. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#beta\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />","items":{"$ref":"#/components/schemas/SubstituteLineItem"},"type":"array"},"tags":{"items":{"$ref":"#/components/schemas/TagReference"},"type":"array"}},"required":["id","picked","status","quantity","article"],"type":"object"}],"title":"PickRunLineItem","description":"PickRunLineItem"},"MandatoryLineItem":{"properties":{"article":{"description":"information about the lineItem","type":"object"},"customAttributes":{"description":"Attributes that can be added to the lineItem. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"quantity":{"description":"The quantity of the lineItem","type":"number"},"recordableAttributes":{"description":"Customizable information about the lineItem that can be set during the process.","items":{"$ref":"#/components/schemas/RecordableAttribute"},"type":"array"},"scannableCodes":{"description":"Codes that can be used for scanning this lineItem","items":{"type":"string"},"type":"array"}},"required":["id","article","quantity"],"title":"MandatoryLineItem","type":"object","description":"MandatoryLineItem"},"RecordableAttribute":{"additionalProperties":false,"properties":{"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations of the key"},"group":{"description":"The group of the attribute","minLength":1,"nullable":true,"type":"string"},"id":{"description":"id of the recordable attribute","type":"string"},"key":{"description":"The translated key of the attribute. This field gets filled automatically on request","type":"string"},"originId":{"description":"The id of the original lineItem the attribute was split from.","nullable":true,"type":"string"},"recordingRule":{"description":"Indicates whether the value has to be recorded or not","enum":["OPTIONAL","MANDATORY"],"type":"string"},"value":{"description":"The value of the attribute","minLength":1,"nullable":true,"type":"string"}},"required":["id","keyLocalized","recordingRule"],"title":"RecordableAttribute","type":"object","description":"RecordableAttribute"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"PickLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/LineItemArticle"}],"properties":{"prices":{"deprecated":true,"items":{"$ref":"#/components/schemas/ArticlePrice"},"type":"array","description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />"}},"type":"object","xml":{"name":"PickLineItemArticle"},"title":"PickLineItemArticle","description":"PickLineItemArticle"},"LineItemArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"attributes":{"description":"Attributes are used in the fulfillmenttools platform in order to impose a certain degree of customization to a process, such as improving the appearance in the platform and clients. Details about usage can be found <a href=\\\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/customization-via-attributes\">here</a>","items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"type":"array"},"customAttributes":{"deprecated":true,"description":"deprecated: use customAttributes on lineItem instead.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["title","tenantArticleId"],"title":"LineItemArticle","type":"object","description":"LineItemArticle"},"ArticlePrice":{"additionalProperties":false,"properties":{"currency":{"allOf":[{"$ref":"#/components/schemas/CurrencyCode"}],"description":"The currency of the price as an ISO 4217 code.","nullable":true,"type":"string"},"pricePerUnit":{"description":"Price value for a given currency per unit","minimum":0,"type":"number"}},"required":["pricePerUnit","currency"],"type":"object","title":"ArticlePrice","description":"ArticlePrice"},"CurrencyCode":{"description":"The currency code is a three-letter code that represents a currency in the ISO 4217 standard.","enum":["AED","AFN","ALL","AMD","ANG","AOA","ARS","AUD","AWG","AZN","BAM","BBD","BDT","BGN","BHD","BIF","BMD","BND","BOB","BOV","BRL","BSD","BTN","BWP","BYN","BZD","CAD","CDF","CHE","CHF","CHW","CLF","CLP","CNY","COP","COU","CRC","CUC","CUP","CVE","CZK","DJF","DKK","DOP","DZD","EGP","ERN","ETB","EUR","FJD","FKP","GBP","GEL","GHS","GIP","GMD","GNF","GTQ","GYD","HKD","HNL","HTG","HUF","IDR","ILS","INR","IQD","IRR","ISK","JMD","JOD","JPY","KES","KGS","KHR","KMF","KPW","KRW","KWD","KYD","KZT","LAK","LBP","LKR","LRD","LSL","LYD","MAD","MDL","MGA","MKD","MMK","MNT","MOP","MRU","MUR","MVR","MWK","MXN","MXV","MYR","MZN","NAD","NGN","NIO","NOK","NPR","NZD","OMR","PAB","PEN","PGK","PHP","PKR","PLN","PYG","QAR","RON","RSD","RUB","RWF","SAR","SBD","SCR","SDG","SEK","SGD","SHP","SLE","SOS","SRD","SSP","STN","SVC","SYP","SZL","THB","TJS","TMT","TND","TOP","TRY","TTD","TWD","TZS","UAH","UGX","USD","USN","UYI","UYU","UYW","UZS","VED","VES","VND","VUV","WST","XAF","XAG","XAU","XBA","XBB","XBC","XBD","XCD","XDR","XOF","XPD","XPF","XPT","XSU","XTS","XUA","XXX","YER","ZAR","ZMW","ZWL"],"type":"string","title":"CurrencyCode"},"PickJobLineItemPartialStockLocation":{"allOf":[{"$ref":"#/components/schemas/PickJobLineItemPartialStockLocationForCreation"}],"properties":{"picked":{"format":"int64","minimum":0,"type":"number"},"stockEmptied":{"type":"boolean"},"zoneName":{"type":"string"},"zoneRef":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocation","description":"PickJobLineItemPartialStockLocation"},"PickJobLineItemPartialStockLocationForCreation":{"properties":{"available":{"format":"int64","minimum":0,"type":"number"},"location":{"$ref":"#/components/schemas/Location"},"quantity":{"description":"quantity of the specific article that should be picked from given stockLocation","format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"}},"required":["tenantPartialStockId","stockRef"],"type":"object","title":"PickJobLineItemPartialStockLocationForCreation","description":"PickJobLineItemPartialStockLocationForCreation"},"Location":{"properties":{"locationRef":{"description":"The id of the location","type":"string"},"scannableCodes":{"description":"Represents barcodes that may be scanned at this location","items":{"type":"string"},"type":"array"}},"xml":{"name":"Location"},"title":"Location","description":"Location"},"PickingStockPropertyPreset":{"description":"Preset of Picking Stock Property.","properties":{"expiry":{"type":"string"}},"title":"PickingStockPropertyPreset","type":"object"},"PickingStockProperty":{"additionalProperties":{"type":"string"},"description":"Picking Stock Property.","title":"PickingStockProperty","type":"object"},"PickLineItemScannedCode":{"properties":{"code":{"description":"scannable code i.e. barcode","type":"string"},"quantity":{"description":"scanned quantity","format":"int64","minimum":0,"type":"integer"}},"required":["code","quantity"],"type":"object","title":"PickLineItemScannedCode","description":"PickLineItemScannedCode"},"ScanningRuleConfiguration":{"description":"Configuration to show the client how the items should be scanned during picking","properties":{"values":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"ScanningRuleConfiguration"},"ScanningRuleValue":{"properties":{"priority":{"description":"This field allows you to rank scanningRuleType against each other. The lowest number is the most preferable.","minimum":0,"type":"number"},"scanningRuleType":{"$ref":"#/components/schemas/ScanningRuleTypeEnum"}},"required":["priority","scanningRuleType"],"title":"ScanningRuleValue","description":"ScanningRuleValue"},"ScanningRuleTypeEnum":{"description":"Type of scanning rule","enum":["ARTICLE","LOCATION"],"type":"string","title":"ScanningRuleTypeEnum"},"PickLineItemScanningRules":{"additionalProperties":false,"properties":{"scanningMode":{"$ref":"#/components/schemas/PickingScanningConfigurationEnum"},"scanningType":{"items":{"$ref":"#/components/schemas/ScanningRuleValue"},"type":"array"}},"title":"PickLineItemScanningRules","description":"PickLineItemScanningRules"},"PickingScanningConfigurationEnum":{"description":"Way in which the scanning of articles during picking is enforced","enum":["MUST_SCAN_FIRST","MUST_SCAN_EACH","SCAN_NOT_REQUIRED"],"type":"string","title":"PickingScanningConfigurationEnum"},"PickLineShortPickReason":{"additionalProperties":false,"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Localized reason"},"reason":{"description":"translated reasonLocalized according to the given locale","type":"string"}},"required":["reasonLocalized"],"title":"PickLineShortPickReason","description":"PickLineShortPickReason"},"PickLineItemStatus":{"description":"A pickjob line item initially has the status OPEN and picking can start. When a line item is opened within the picking app, the item changes its status to IN_PROGRESS. When the commissioning is finished the state is CLOSED","enum":["OPEN","IN_PROGRESS","CLOSED"],"type":"string","xml":{"name":"PickLineItemStatus"},"title":"PickLineItemStatus"},"Sticker":{"additionalProperties":false,"properties":{"nameLocalized":{"$ref":"#/components/schemas/LocaleString","description":"Dictionary of possible translations, min 1 entry, max 14 characters per description"},"color":{"description":"optional color coding for the sticker","type":"string"},"key":{"description":"unique identifier","type":"string"},"name":{"description":"Translated display name","type":"string"},"priority":{"description":"priority of the given sticker","format":"int64","maximum":10000,"minimum":1,"type":"integer"}},"required":["key","nameLocalized","priority"],"title":"Sticker","description":"Sticker"},"SubstituteLineItem":{"properties":{"article":{"$ref":"#/components/schemas/SubstituteLineItemArticle"},"globalLineItemId":{"description":"This id is used to identify if this line item is related to the line item of other operational entities.","type":"string"},"id":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"partialStockLocations":{"items":{"$ref":"#/components/schemas/SubstituteLineItemPartialStockLocation"},"type":"array"},"picked":{"description":"The amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"pickedAt":{"description":"Date when the line has been picked.","format":"date-time","type":"string"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"quantity":{"description":"quantity of the specific article that needs to be picked to substitute the item","format":"int64","minimum":1,"type":"integer"},"refused":{"items":{"$ref":"#/components/schemas/RefusedItem"},"type":"array"},"scannableCodes":{"items":{"description":"Codes, that identify the article","type":"string"},"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"secondaryPicked":{"description":"The secondary amount of articles that were picked for this pickline.","format":"int64","minimum":0,"type":"integer"},"secondaryQuantity":{"description":"secondary quantity of this item, E.g. quantity is the count and secondaryQuantity is the weight","format":"int64","minimum":1,"type":"integer"}},"required":["article","id","quantity"],"type":"object","title":"SubstituteLineItem","description":"SubstituteLineItem"},"SubstituteLineItemArticle":{"allOf":[{"$ref":"#/components/schemas/AbstractArticle"},{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/ArticleAttributeItem"},"maxItems":40,"type":"array"}},"type":"object"}],"xml":{"name":"SubstituteLineItemArticle"},"title":"SubstituteLineItemArticle","description":"SubstituteLineItemArticle"},"AbstractArticle":{"properties":{"titleLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the title of the product"},"customAttributes":{"description":"Attributes that can be added to this entity. These attributes **cannot** be used within fulfillment processes, but enable you to attach custom data from your systems to fulfillmenttools entities.","nullable":true,"type":"object"},"imageUrl":{"description":"A web link to a picture of this article. Please make sure that no authentication is required to fetch the image!","type":"string"},"tenantArticleId":{"description":"This is a reference to an article number","type":"string"},"title":{"description":"The title of the product","type":"string"},"weight":{"description":"weight value is in gram","minimum":0,"type":"number"}},"required":["tenantArticleId","title"],"title":"AbstractArticle","type":"object","description":"AbstractArticle"},"SubstituteLineItemPartialStockLocation":{"properties":{"location":{"$ref":"#/components/schemas/Location"},"picked":{"format":"int64","minimum":0,"type":"number"},"quantity":{"format":"int64","minimum":0,"type":"number"},"ratingScore":{"type":"number"},"sequenceScore":{"type":"number"},"stockProperties":{"anyOf":[{"$ref":"#/components/schemas/PickingStockPropertyPreset"},{"$ref":"#/components/schemas/PickingStockProperty"}]},"stockRef":{"type":"string"},"tenantPartialStockId":{"type":"string"},"zoneName":{"type":"string"}},"required":["location","quantity"],"type":"object","title":"SubstituteLineItemPartialStockLocation","description":"SubstituteLineItemPartialStockLocation"},"RefusedItem":{"properties":{"reasonLocalized":{"$ref":"#/components/schemas/LocaleString"},"comment":{"type":"string"},"quantity":{"minimum":0,"type":"integer"},"reason":{"type":"string"}},"required":["quantity"],"title":"RefusedItem","description":"RefusedItem"},"TagReference":{"properties":{"id":{"type":"string"},"value":{"type":"string"}},"required":["value","id"],"title":"TagReference","description":"TagReference"},"PickRunType":{"default":"batchPick","description":"Deprecated: batchPick, use batch instead Deprecated: multiOrderPick, use multiOrder instead","enum":["multiOrderPick","multiOrder","batchPick","batch"],"type":"string","title":"PickRunType"},"PickRunStatus":{"description":"The state of the PickRun","enum":["OPEN","IN_PROGRESS","CLOSED","PAUSED","CANCELED","OBSOLETE"],"type":"string","title":"PickRunStatus"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickruns/{pickRunId}/actions":{"post":{"operationId":"pickRunAction","parameters":[{"description":"Reference to the pick run you want to call the action for","in":"path","name":"pickRunId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRunActionsParameter"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRun"}}},"description":"Updated Pick Run in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"Call pick run action","tags":["Picking (Operations)"]}}}}
```

## PATCH /api/pickruns/{pickRunId}/pickjobs

> Update pick run pick jobs

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"PickRunPickJobsPatchAction":{"properties":{"actions":{"items":{"anyOf":[{"$ref":"#/components/schemas/RemovePickJobFromPickRun"}]},"maxItems":1,"minItems":1,"type":"array"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version","actions"],"type":"object","xml":{"name":"PickRunPickJobsPatchAction"},"title":"PickRunPickJobsPatchAction","description":"PickRunPickJobsPatchAction"},"RemovePickJobFromPickRun":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"action":{"description":"Use value 'RemovePickJobFromPickRun', because you want to remove a pickjob","enum":["RemovePickJobFromPickRun"],"type":"string"},"pickJobRef":{"description":"PickJob reference of the PickJob you want to remove.","type":"string"}},"required":["action","pickJobRef"],"type":"object"}],"deprecated":true,"description":"This part of the API is deprecated. For details please check the <a href=\"https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/api-release-life-cycle#deprecated\" target=\"_blank\">api-release-life-cycle documentation</a>.<br /><br />@deprecated Use /api/pickruns/{pickRunId}/actions instead","title":"RemovePickJobFromPickRun","xml":{"name":"RemovePickJobFromPickRun"}},"AbstractModificationAction":{"discriminator":{"propertyName":"action"},"properties":{"action":{"description":"","enum":["AddAllowedValueToTag","ModifyPickJob","ModifyPickJobLastEditor","RestartPickJob","ResetPickJob","CancelPickRun","CancelHandoverjob","AbortPickJob","FinishPickRun","StartPickRun","ModifyPickLineItem","ModifyPickRunLineItem","ModifyPackJob","PausePackJob","ModifyPackLineItem","SplitLineItemsPackJob","ModifyFacility","ModifyListing","ModifyRetainedOfflineStock","ModifyListingReactivationAfter","ModifyUser","ModifyShipment","ModifyHandoverjob","ModifyCarrier","ModifyShortpick","ModifyRoutingPlan","ModifyFence","ModifyRating","ModifyTimingMode","ModifyGlobalRoutingConfiguration","ModifyOrderSplit","ModifyPrioritization","ModifyFeature","ModifyParcel","ModifyParcelLoadUnit","ModifyRestowItem","RemovePickJobFromPickRun","ModifyPartialStock","AddTagsToProcess","AssignFacilityToProcess","UpdateGdprCleanupDateAction","ModifyStorageLocation","ModifyPackingContainerType","ModifyPackingContainerTypeIcon","ReplaceCodesInPackingTargetContainer","AddLineItemToPackingTargetContainer","RemoveLineItemFromPackingTargetContainer","UpdateLineItemOnPackingTargetContainer","UpdatePackingTargetContainerLineItemRecordableAttributes","UpdatePackingTargetContainerStorageLocation","ModifyCustomService","UnlockOrder"],"type":"string"}},"required":["action"],"type":"object","xml":{"name":"AbstractModificationAction"},"title":"AbstractModificationAction","description":"AbstractModificationAction"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/pickruns/{pickRunId}/pickjobs":{"patch":{"description":"","operationId":"patchPickRunPickJobs","parameters":[{"description":"id of pickRun","in":"path","name":"pickRunId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PickRunPickJobsPatchAction"}}}},"responses":{"200":{"description":"Pick job was successfully from pick run removed."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"}},"summary":"Update pick run pick jobs","tags":["Picking (Operations)"]}}}}
```

## GET /api/substitutes

> List substitutes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Substitutes":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"$ref":"#/components/schemas/SubstitutesForUpsert"}],"required":["tenantArticleId","substitutes"],"type":"object","xml":{"name":"Substitutes"},"title":"Substitutes","description":"Substitutes"},"Entity":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"id":{"description":"The id of the entity.","type":"string"}},"required":["id"],"type":"object","title":"Entity","description":"Entity"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"SubstitutesForUpsert":{"properties":{"substitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"tenantArticleId":{"type":"string"},"version":{"description":"Version field is used in the optimistic locking process. If the Substitute is for the tenantArticleId is not set yet, this field is ignored.","type":"number"}},"required":["substitutes","version","tenantArticleId"],"type":"object","xml":{"name":"SubstitutesForUpsert"},"title":"SubstitutesForUpsert","description":"SubstitutesForUpsert"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/substitutes":{"get":{"operationId":"getResultingSubstitutesForTenantArticleId","parameters":[{"description":"the tenantArticleId substitutes are requested for","in":"query","name":"tenantArticleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Substitutes"}}},"description":"There are substitutes for the given tenantArticleId. The result can be found in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Facility not found"}},"summary":"List substitutes","tags":["Picking (Operations)"]}}}}
```

## Get substitutes

> Get the substitutes for a given tenant article id

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"Substitutes":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"$ref":"#/components/schemas/SubstitutesForUpsert"}],"required":["tenantArticleId","substitutes"],"type":"object","xml":{"name":"Substitutes"},"title":"Substitutes","description":"Substitutes"},"Entity":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"id":{"description":"The id of the entity.","type":"string"}},"required":["id"],"type":"object","title":"Entity","description":"Entity"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"SubstitutesForUpsert":{"properties":{"substitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"tenantArticleId":{"type":"string"},"version":{"description":"Version field is used in the optimistic locking process. If the Substitute is for the tenantArticleId is not set yet, this field is ignored.","type":"number"}},"required":["substitutes","version","tenantArticleId"],"type":"object","xml":{"name":"SubstitutesForUpsert"},"title":"SubstitutesForUpsert","description":"SubstitutesForUpsert"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/substitutes/{tenantArticleId}":{"get":{"description":"Get the substitutes for a given tenant article id","operationId":"getSubstitutesForTenantArticleId","parameters":[{"description":"","in":"path","name":"tenantArticleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Substitutes"}}},"description":"The substitutes for the given tenantArticleId can be found in the body."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Facility not found"}},"summary":"Get substitutes","tags":["Picking (Operations)"]}}}}
```

## PUT /api/substitutes/{tenantArticleId}

> Set substitutes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"SubstitutesForUpsert":{"properties":{"substitutes":{"items":{"$ref":"#/components/schemas/Substitute"},"type":"array"},"tenantArticleId":{"type":"string"},"version":{"description":"Version field is used in the optimistic locking process. If the Substitute is for the tenantArticleId is not set yet, this field is ignored.","type":"number"}},"required":["substitutes","version","tenantArticleId"],"type":"object","xml":{"name":"SubstitutesForUpsert"},"title":"SubstitutesForUpsert","description":"SubstitutesForUpsert"},"Substitute":{"properties":{"attributes":{"items":{"$ref":"#/components/schemas/SubstituteAttributeItem"},"maxItems":40,"type":"array"},"imageUrl":{"type":"string"},"measurementUnitKey":{"description":"Identifier for items unit of measurement.","type":"string"},"measurementValidation":{"$ref":"#/components/schemas/MeasurementValidation"},"priority":{"description":"This field allows you to rank substitutes against each other. The lowest number is the most preferrable substitute.","minimum":0,"type":"number"},"scannableCodes":{"items":{"description":"Strings, that identify the substitute article","type":"string"},"maxItems":500,"type":"array"},"secondaryMeasurementUnitKey":{"description":"Identifier for items unit of measurement. E.g. measurementUnitKey is pieces and secondaryQuantity is gram","type":"string"},"tenantArticleId":{"type":"string"},"title":{"type":"string"}},"required":["title","tenantArticleId"],"type":"object","xml":{"name":"Substitute"},"title":"Substitute","description":"Substitute"},"SubstituteAttributeItem":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItem"}],"title":"SubstituteAttributeItem","description":"SubstituteAttributeItem"},"ArticleAttributeItem":{"properties":{"valueLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category"},"keyLocalized":{"allOf":[{"$ref":"#/components/schemas/LocaleString"}],"description":"The translations for the key of the attribute. This can be only filled with a descriptive category. Excluding for %%subtitle%%"},"category":{"description":"This category is used by OCFF to customize implemented processes.\nCategorized attributes are used by various processes and tools\nthroughout our platform. For a complete list of possible categories\nand the correct use of those please refer to the documentation.\nDefault value: miscellaneous","enum":["descriptive","miscellaneous","pickingSequence","customs","insurance","shop","dimensions","carrierService","salesPrice","basePrice","tax","discount","surcharge","subtotalBeforeDiscounts","subtotalAfterDiscounts","finalUnitPrice","finalLineItemPrice"],"type":"string"},"context":{"allOf":[{"$ref":"#/components/schemas/ArticleAttributeItemContext"}],"description":"Context for salesPrice category and valuePerUnit key. Can only be set via Listing endpoints."},"key":{"description":"Providing the key %%subtitle%% (see example) here will cause the\nvalue to appear for example in the App directly under the title.\nWith all other attributes also the key will be displayed in the\n clients.","minLength":1,"type":"string"},"priority":{"description":"This value gives the priority in the respective attribute category.\nThe lower the value the higher is the priority, e.g. priority 1 is\nhigher than priority 10. Attributes that have the highest priority\nmight be selected for display in different articles of OCFF. Default\nValue is 1001. For details please contact the product owners.","format":"int64","maximum":1001,"minimum":1,"type":"integer"},"type":{"default":"STRING","description":"The type of the attribute.","enum":["STRING","NUMBER","CURRENCY","BOOLEAN"],"type":"string"},"value":{"minLength":1,"type":"string"}},"required":["key","value"],"title":"ArticleAttributeItem","type":"object","description":"ArticleAttributeItem"},"LocaleString":{"additionalProperties":{"type":"string"},"description":"Provides Localized values. The key is the locale, the value is the translation. https://docs.fulfillmenttools.com/documentation/developer-docs/api/core-concepts/localization","title":"LocaleString","type":"object"},"ArticleAttributeItemContext":{"properties":{"type":{"description":"Indicates the entity type the value refers to.","enum":["FACILITY_GROUP","FACILITY","TAG_REFERENCE"],"type":"string"},"value":{"description":"Holds the reference to the entity the attribute refers to.","minLength":1,"type":"string"}},"required":["type","value"],"title":"ArticleAttributeItemContext","type":"object","description":"ArticleAttributeItemContext"},"MeasurementValidation":{"properties":{"overPickHardTolerancePercentage":{"description":"Allowed hard over pick deviation tolerance.","minimum":0,"type":"number"},"overPickSoftTolerancePercentage":{"description":"Allowed soft over pick deviation tolerance.","minimum":0,"type":"number"},"shortPickHardTolerancePercentage":{"description":"Allowed hard short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"},"shortPickSoftTolerancePercentage":{"description":"Allowed soft short pick deviation tolerance.","maximum":100,"minimum":0,"type":"number"}},"title":"MeasurementValidation","description":"MeasurementValidation"},"Substitutes":{"allOf":[{"$ref":"#/components/schemas/Entity"},{"$ref":"#/components/schemas/SubstitutesForUpsert"}],"required":["tenantArticleId","substitutes"],"type":"object","xml":{"name":"Substitutes"},"title":"Substitutes","description":"Substitutes"},"Entity":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"id":{"description":"The id of the entity.","type":"string"}},"required":["id"],"type":"object","title":"Entity","description":"Entity"},"VersionedResource":{"properties":{"created":{"description":"The date this entity was created at the platform. This value is generated by the service.","format":"date-time","type":"string"},"lastModified":{"description":"The date this entity was modified last. This value is generated by the service.","format":"date-time","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"type":"object","title":"VersionedResource","description":"VersionedResource"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/substitutes/{tenantArticleId}":{"put":{"description":"","operationId":"putSubstitutesForTenantArticleID","parameters":[{"description":"Tenant article ID of the article the substitutes should be set for","in":"path","name":"tenantArticleId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubstitutesForUpsert"}}},"description":"substitutes to set","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Substitutes"}}},"description":"The substitutes for tenantArticleId were successfully updated"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Facility listing not found"}},"summary":"Set substitutes","tags":["Picking (Operations)"]}}}}
```

## DELETE /api/substitutes/{tenantArticleId}

> Delete substitutes

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"These endpoints support the management of the picking process.","name":"Picking (Operations)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/substitutes/{tenantArticleId}":{"delete":{"description":"","operationId":"deleteSubstitutesForTenantArticleId","parameters":[{"description":"the tenant article ID the subsitutes should be deleted for","in":"path","name":"tenantArticleId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The substitutes for the given tenantArticleId were successfully deleted"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this endpoint"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Facility listing not found"}},"summary":"Delete substitutes","tags":["Picking (Operations)"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fulfillmenttools.com/documentation/apis/api-reference/picking-operations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
