# Custom Services (Core)

Endpoints to create, update and read custom services.

## List custom services

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"StrippedCustomServices":{"properties":{"customServices":{"items":{"$ref":"#/components/schemas/CustomService"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"type":"object","title":"StrippedCustomServices","description":"StrippedCustomServices"},"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"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"},"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices":{"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 />","operationId":"getCustomServices","parameters":[{"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":"tenantCustomServiceId to filter for","in":"query","name":"tenantCustomServiceId","required":false,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrippedCustomServices"}}},"description":"Custom service config could be found in response 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":"List custom services","tags":["Custom Services (Core)"]}}}}
```

## Create custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"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"},"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices":{"post":{"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 />","operationId":"createCustomService","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomServiceForCreation"}}},"description":"Desired custom service to create","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service was successfully updated."},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service 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 endpoint"}},"summary":"Create custom service","tags":["Custom Services (Core)"]}}}}
```

## Get custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"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"},"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices/{customServiceId}":{"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 />","operationId":"getCustomService","parameters":[{"description":"ID of custom service you want to get","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"Custom service config could be found in response 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 custom service","tags":["Custom Services (Core)"]}}}}
```

## Update custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"CustomServicePatchActions":{"additionalProperties":false,"deprecated":true,"description":"Deprecated - please use patch via CustomServiceForUpdate on the CustomService endpoint instead.","properties":{"actions":{"items":{"anyOf":[{"$ref":"#/components/schemas/ModifyCustomServiceAction"}]},"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":"CustomServicePatchActions"},"title":"CustomServicePatchActions"},"ModifyCustomServiceAction":{"allOf":[{"$ref":"#/components/schemas/AbstractModificationAction"},{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"action":{"description":"Use value 'ModifyCustomService', because you want to modify a custom service","enum":["ModifyCustomService"],"type":"string"},"executionTimeInMin":{"description":"Time in minutes the custom service takes to be executed","type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"description":"Indicates if the items of the custom service are returnable after the custom service has been executed","type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["action"],"type":"object"}],"description":"Action to modify a custom service.","title":"ModifyCustomServiceAction","xml":{"name":"ModifyCustomServiceAction"}},"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","ModifyLoadUnitType","ModifyFeature","ModifyParcel","ModifyParcelLoadUnit","ModifyRestowItem","RemovePickJobFromPickRun","ModifyPartialStock","AddTagsToProcess","AssignFacilityToProcess","UpdateGdprCleanupDateAction","ModifyStorageLocation","ModifyPackingContainerType","ModifyPackingContainerTypeIcon","ReplaceCodesInPackingTargetContainer","ReplaceLoadUnitLineItems","AddLineItemToPackingTargetContainer","RemoveLineItemFromPackingTargetContainer","UpdateLineItemOnPackingTargetContainer","UpdatePackingTargetContainerLineItemRecordableAttributes","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"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"CustomServiceForUpdate":{"additionalProperties":false,"description":"Updating a custom service.","properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"customAttributes":{"description":"Attributes that can be added to the custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","type":"object"},"executionTimeInMin":{"description":"Time in minutes the custom service takes to be executed","type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"description":"Indicates if the items of the custom service are returnable after the custom service has been executed","type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"description":"Tenant specific ID of the custom service","type":"string"},"version":{"description":"The version of the document to be used in optimistic locking mechanisms.","format":"int64","type":"integer"}},"required":["version"],"title":"CustomServiceForUpdate"},"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices/{customServiceId}":{"patch":{"operationId":"patchCustomService","parameters":[{"description":"ID of custom service you want to patch","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/CustomServicePatchActions"},{"$ref":"#/components/schemas/CustomServiceForUpdate"}]}}},"description":"Patch set","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"custom service was found & patch-set has been applied. The patched custom service 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":"custom service not found"},"409":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"custom service version conflict"}},"summary":"Update custom service","tags":["Custom Services (Core)"],"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 />"}}}}
```

## Create additional information

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"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"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices/{customServiceId}/additionalinformation":{"post":{"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 />","operationId":"createCustomServiceAdditionalInformation","parameters":[{"description":"ID of custom service you want to create service job for","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdditionalInformationForCreation"}}},"description":"Desired custom service to create","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service was successfully updated."},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service 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 endpoint"}},"summary":"Create additional information","tags":["Custom Services (Core)"]}}}}
```

## Update additional information

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"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"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices/{customServiceId}/additionalinformation/{additionalInformationId}":{"put":{"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 />","operationId":"updateCustomServiceAdditionalInformation","parameters":[{"description":"ID of custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}},{"description":"ID of additional information you want to put","in":"path","name":"additionalInformationId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdditionalInformationForCreation"}}},"description":"Desired custom service to create","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service was successfully updated."},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service 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 endpoint"}},"summary":"Update additional information","tags":["Custom Services (Core)"]}}}}
```

## Delete additional information

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"CustomService":{"allOf":[{"$ref":"#/components/schemas/VersionedResource"},{"$ref":"#/components/schemas/CustomServiceForCreation"}],"properties":{"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformation"},"type":"array"},"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"}},"required":["id"],"type":"object","title":"CustomService","description":"CustomService"},"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"},"CustomServiceForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"additionalInformation":{"items":{"$ref":"#/components/schemas/AdditionalInformationForCreation"},"type":"array"},"customAttributes":{"description":"Attributes that can be added to custom service. These attributes cannot be used within fulfillment processes, but it could be useful to have the information carried here.","nullable":true,"type":"object"},"executionTimeInMin":{"type":"integer"},"itemsRequired":{"$ref":"#/components/schemas/ItemsRequiredEnum"},"itemsReturnable":{"type":"boolean"},"status":{"$ref":"#/components/schemas/CustomServiceStatus"},"tenantCustomServiceId":{"type":"string"}},"required":["nameLocalized","itemsRequired","status"],"type":"object","title":"CustomServiceForCreation","description":"CustomServiceForCreation"},"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"},"AdditionalInformationForCreation":{"additionalProperties":false,"properties":{"descriptionLocalized":{"$ref":"#/components/schemas/LocaleString"},"nameLocalized":{"$ref":"#/components/schemas/LocaleString"},"isMandatory":{"type":"boolean"},"tenantAdditionalInformationId":{"description":"Id to identifiy the additional information on an external system. Must be unique per CustomService.","minLength":1,"type":"string"},"valueType":{"$ref":"#/components/schemas/AdditionalInformationValueType"}},"required":["nameLocalized","valueType"],"type":"object","title":"AdditionalInformationForCreation","description":"AdditionalInformationForCreation"},"AdditionalInformationValueType":{"enum":["STRING","BOOLEAN","NUMBER","NOVALUE","INPUT_MULTILINE_STRING"],"type":"string","title":"AdditionalInformationValueType","description":"AdditionalInformationValueType"},"ItemsRequiredEnum":{"enum":["MANDATORY","NONE"],"type":"string","title":"ItemsRequiredEnum","description":"ItemsRequiredEnum"},"CustomServiceStatus":{"description":"Deprecated values: ENABLED and DISABLED, use INACTIVE and ACTIVE instead","enum":["ENABLED","DISABLED","INACTIVE","ACTIVE"],"type":"string","title":"CustomServiceStatus"},"AdditionalInformation":{"allOf":[{"$ref":"#/components/schemas/AdditionalInformationForCreation"}],"properties":{"description":{"type":"string"},"id":{"type":"string"},"name":{"type":"string"}},"required":["id"],"type":"object","title":"AdditionalInformation","description":"AdditionalInformation"},"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/customservices/{customServiceId}/additionalinformation/{additionalInformationId}":{"delete":{"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 />","operationId":"deleteAdditionalInfo","parameters":[{"description":"ID of custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}},{"description":"ID of additional information you want to delete","in":"path","name":"additionalInformationId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service was successfully updated."},"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomService"}}},"description":"The custom service 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 endpoint"}},"summary":"Delete additional information","tags":["Custom Services (Core)"]}}}}
```

## List facility custom services

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"StrippedFacilityCustomServiceConnections":{"additionalProperties":false,"properties":{"facilityCustomServiceConnections":{"items":{"$ref":"#/components/schemas/FacilityCustomServiceConnection"},"type":"array"},"total":{"description":"Total number of found entities for this query","type":"integer"}},"type":"object","title":"StrippedFacilityCustomServiceConnections","description":"StrippedFacilityCustomServiceConnections"},"FacilityCustomServiceConnection":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"customServiceRef":{"type":"string"},"executionTimeInMin":{"type":"integer"},"facilityRef":{"type":"string"},"id":{"type":"string"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"}},"required":["id","status","facilityRef","customServiceRef"],"title":"FacilityCustomServiceConnection","description":"FacilityCustomServiceConnection"},"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"},"FacilityCustomServiceConnectionStatus":{"enum":["ACTIVE","INACTIVE"],"type":"string","title":"FacilityCustomServiceConnectionStatus","description":"FacilityCustomServiceConnectionStatus"},"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/facilities/{facilityId}/customservices":{"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 />","operationId":"getFacilityCustomServiceConnections","parameters":[{"description":"ID of facility. Also accepts tenantFacilityId in urn format (e.g. urn:fft:facility:tenantFacilityId:{your-tenant-facility-id}).","in":"path","name":"facilityId","required":true,"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":{"default":25,"type":"integer"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrippedFacilityCustomServiceConnections"}}},"description":"Custom service connections could be found in response 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":"List facility custom services","tags":["Custom Services (Core)"]}}}}
```

## Get facility custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"FacilityCustomServiceConnection":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"customServiceRef":{"type":"string"},"executionTimeInMin":{"type":"integer"},"facilityRef":{"type":"string"},"id":{"type":"string"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"}},"required":["id","status","facilityRef","customServiceRef"],"title":"FacilityCustomServiceConnection","description":"FacilityCustomServiceConnection"},"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"},"FacilityCustomServiceConnectionStatus":{"enum":["ACTIVE","INACTIVE"],"type":"string","title":"FacilityCustomServiceConnectionStatus","description":"FacilityCustomServiceConnectionStatus"},"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/facilities/{facilityId}/customservices/{customServiceId}":{"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 />","operationId":"getFacilityCustomService","parameters":[{"description":"ID of facility. Also accepts tenantFacilityId in urn format (e.g. urn:fft:facility:tenantFacilityId:{your-tenant-facility-id}).","in":"path","name":"facilityId","required":true,"schema":{"type":"string"}},{"description":"ID of the custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacilityCustomServiceConnection"}}},"description":"Custom service connection could be found in response 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 facility custom service","tags":["Custom Services (Core)"]}}}}
```

## Create facility custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"FacilityCustomServiceConnectionForCreation":{"additionalProperties":false,"properties":{"executionTimeInMin":{"description":"Time in minutes the custom service takes to be executed","type":"integer"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"}},"required":["status"],"title":"FacilityCustomServiceConnectionForCreation","description":"FacilityCustomServiceConnectionForCreation"},"FacilityCustomServiceConnectionStatus":{"enum":["ACTIVE","INACTIVE"],"type":"string","title":"FacilityCustomServiceConnectionStatus","description":"FacilityCustomServiceConnectionStatus"},"FacilityCustomServiceConnection":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"customServiceRef":{"type":"string"},"executionTimeInMin":{"type":"integer"},"facilityRef":{"type":"string"},"id":{"type":"string"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"}},"required":["id","status","facilityRef","customServiceRef"],"title":"FacilityCustomServiceConnection","description":"FacilityCustomServiceConnection"},"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/facilities/{facilityId}/customservices/{customServiceId}":{"post":{"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 />","operationId":"createFacilityCustomServiceConnection","parameters":[{"description":"ID of facility. Also accepts tenantFacilityId in urn format (e.g. urn:fft:facility:tenantFacilityId:{your-tenant-facility-id}).","in":"path","name":"facilityId","required":true,"schema":{"type":"string"}},{"description":"ID of the custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionForCreation"}}},"description":"Desired custom service connection to create/update","required":true},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacilityCustomServiceConnection"}}},"description":"The custom service connection 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 endpoint"}},"summary":"Create facility custom service","tags":["Custom Services (Core)"]}}}}
```

## Delete facility custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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/facilities/{facilityId}/customservices/{customServiceId}":{"delete":{"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 />","operationId":"deleteFacilityCustomServiceConnection","parameters":[{"description":"ID of facility. Also accepts tenantFacilityId in urn format (e.g. urn:fft:facility:tenantFacilityId:{your-tenant-facility-id}).","in":"path","name":"facilityId","required":true,"schema":{"type":"string"}},{"description":"ID of the custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"The custom service connection was 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 endpoint"}},"summary":"Delete facility custom service","tags":["Custom Services (Core)"]}}}}
```

## Update facility custom service

> 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 />

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to create, update and read custom services.","name":"Custom Services (Core)"}],"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":{"FacilityCustomServiceConnectionForUpdate":{"additionalProperties":false,"properties":{"executionTimeInMin":{"description":"Time in minutes the custom service takes to be executed","type":"integer"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"},"version":{"description":"Version of the documentSet you want to update a document of","format":"int64","type":"integer"}},"required":["version"],"title":"FacilityCustomServiceConnectionForUpdate","description":"FacilityCustomServiceConnectionForUpdate"},"FacilityCustomServiceConnectionStatus":{"enum":["ACTIVE","INACTIVE"],"type":"string","title":"FacilityCustomServiceConnectionStatus","description":"FacilityCustomServiceConnectionStatus"},"FacilityCustomServiceConnection":{"additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/VersionedResource"}],"properties":{"customServiceRef":{"type":"string"},"executionTimeInMin":{"type":"integer"},"facilityRef":{"type":"string"},"id":{"type":"string"},"status":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionStatus"}},"required":["id","status","facilityRef","customServiceRef"],"title":"FacilityCustomServiceConnection","description":"FacilityCustomServiceConnection"},"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/facilities/{facilityId}/customservices/{customServiceId}":{"patch":{"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 />","operationId":"updateFacilityCustomServiceConnection","parameters":[{"description":"ID of facility. Also accepts tenantFacilityId in urn format (e.g. urn:fft:facility:tenantFacilityId:{your-tenant-facility-id}).","in":"path","name":"facilityId","required":true,"schema":{"type":"string"}},{"description":"ID of the custom service","in":"path","name":"customServiceId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacilityCustomServiceConnectionForUpdate"}}},"description":"Desired custom service connection to create/update","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacilityCustomServiceConnection"}}},"description":"The custom service connection 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 endpoint"}},"summary":"Update facility custom service","tags":["Custom Services (Core)"]}}}}
```
