# Fetch API

_For differences between versions, see_ [Changelog](../../changelog/index.md).
# 
![REST API logo](../../resources/rest-api-cloud-logo.png)
<hr/>


Version: v3.0: 3.30.0
License: proprietary

## Servers

Production server
```
https://fetch.yellowdogsoftware.com/api/v3
```

## Security

### Auth API User Token

JWT Authorization header using the Bearer scheme, use the Auth API for retrieving this token.
Permission access for Fetch API endpoints is managed by each client organization. Yellow Dog cannot make user permission changes for YD users under our security policy. API  users must work with their organization's administrator to ensure they have the correct permissions to access the endpoints they need.

Type: http
Scheme: bearer
Bearer Format: JWT

## Download OpenAPI description

 - [Fetch API](https://developer.yellowdogsoftware.com/_bundle/rest/fetch/api.yaml)

## Accounting

 - [GET /accounting/{storeId}/{date}/returnToVendors](https://developer.yellowdogsoftware.com/rest/fetch/api/accounting/get-returntovendors.md): #### Permission Requirements - Permission Path: **Reports > Standard Reports**
 - [GET /accounting/{storeId}/{date}/invoices](https://developer.yellowdogsoftware.com/rest/fetch/api/accounting/get-invoices.md): #### Permission Requirements - Permission Path: **Reports > Standard Reports**
 - [GET /accounting/{storeId}/{date}/revenue](https://developer.yellowdogsoftware.com/rest/fetch/api/accounting/get-revenue.md): Gets revenue of a store on a given date, summarized by GL Account. #### Permission Requirements - Permission Path: **Reports > Standard Reports**
 - [GET /accounting/{storeId}/{date}/journalEntry](https://developer.yellowdogsoftware.com/rest/fetch/api/accounting/get-journalentry.md): Gets a listing of journal entries of a store on a given date, summarized by GL Account. #### Permission Requirements - Permission Path: **Reports > Standard Reports**
 - [GET /accounting/{storeId}/codes/{codeType}](https://developer.yellowdogsoftware.com/rest/fetch/api/accounting/get-codes.md): #### Permission Requirements - Permission Path: **Reports > Standard Reports**
## AttachedFiles

 - [GET /attachedFiles/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/attachedfiles/get-attachedfiles-byid.md)
## CountSheets

 - [GET /countsheets](https://developer.yellowdogsoftware.com/rest/fetch/api/countsheets/get-countsheets-all.md)
 - [GET /countsheets/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/countsheets/get-countsheets-byid.md)
## Currency

 - [GET /currency](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/get-currency.md)
 - [POST /currency](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/post-currency.md)
 - [PUT /currency](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/put-currency.md)
 - [DELETE /currency](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/delete-currency.md)
 - [GET /currency/effectiveExchangeRate/{currencyCode}](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/get-currency-exchange.md)
 - [GET /currency/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/get-currency-byid.md)
 - [DELETE /currency/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/currency/delete-currency-byid.md)
## Dimensions

 - [GET /dimensions](https://developer.yellowdogsoftware.com/rest/fetch/api/dimensions/get-dimensions.md)
 - [POST /dimensions](https://developer.yellowdogsoftware.com/rest/fetch/api/dimensions/post-dimensions.md)
 - [PUT /dimensions](https://developer.yellowdogsoftware.com/rest/fetch/api/dimensions/put-dimensions.md)
 - [GET /dimensions/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/dimensions/get-dimensions-byid.md)
 - [DELETE /dimensions/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/dimensions/delete-dimensions-byid.md)
## Flags

 - [GET /flags](https://developer.yellowdogsoftware.com/rest/fetch/api/flags/get-flags.md)
 - [GET /flags/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/flags/get-flags-byid.md)
## Inventory

 - [POST /inventory](https://developer.yellowdogsoftware.com/rest/fetch/api/inventory/post-track-inventory.md): This endpoint is recommended for any frequent polling of item onhands. Although the `GET Items` endpoint includes a stores onhand value, the onhand value being changed does not trigger an update of
## Invoices

 - [POST /invoices/ocr](https://developer.yellowdogsoftware.com/rest/fetch/api/invoices/post-invoices-ocr.md)
 - [POST /invoices/staged/{stagedInvoiceId}/lines](https://developer.yellowdogsoftware.com/rest/fetch/api/invoices/post-invoices-staged-byid-lines.md)
 - [GET /invoices/staged/{stagedInvoiceId}/original-document](https://developer.yellowdogsoftware.com/rest/fetch/api/invoices/get-invoices-staged-byid-original-document.md)
 - [PUT /invoices/staged/{stagedInvoiceId}](https://developer.yellowdogsoftware.com/rest/fetch/api/invoices/put-invoices-staged-byid.md): This endpoint requires the user to be authenticated and have the Api.Helpers.YdPolicyName.atLeast377 policy. The updated staged invoice is returned in the response body if the operation is successful
 - [PATCH /invoices/staged/{stagedInvoiceId}](https://developer.yellowdogsoftware.com/rest/fetch/api/invoices/patch-invoices-staged-byid.md)
## ItemAliases

 - [POST /itemaliases](https://developer.yellowdogsoftware.com/rest/fetch/api/itemaliases/post-itemaliases.md): #### Permission Requirements - Permission Path: **Inventory Items > Item Editor > Additional UPCs Tab** (editor access required)
## Items

 - [GET /items](https://developer.yellowdogsoftware.com/rest/fetch/api/items/get-items.md): <details id="GetItems-ReqDesc-OneOfThreeEp"> <summary> Three Endpoints Retrieve Item Data </summary> | | [GET /items](/rest/fetch/api/items/get-items) | Multiple items from any store unless filtered
 - [PATCH /items](https://developer.yellowdogsoftware.com/rest/fetch/api/items/patch-items.md): This endpoint allows for bulk upserting of item configuration changes. Creating items does have a different set of fields that are required than updating. ### Creating an Item The fields that are requ
 - [GET /items/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/items/get-items-byid.md): <details id="GetItemsByid-ReqDesc-OneOfThreeEp"> <summary> Three Endpoints Retrieve Item Data </summary> | | [GET /items](/rest/fetch/api/items/get-items) | Multiple items from any store unless filte
 - [PATCH /items/store-configs](https://developer.yellowdogsoftware.com/rest/fetch/api/items/patch-items-store-configs.md)
 - [POST /items/{itemId}/images](https://developer.yellowdogsoftware.com/rest/fetch/api/items/post-items-images.md): User's client *MUST* be 366+ with cloud storage enabled. #### Permission Requirements - Permission Path: **Inventory Items > Item Editor > Pictures Tab** (editor access required)
 - [PATCH /items/{itemId}/images/{imageId}](https://developer.yellowdogsoftware.com/rest/fetch/api/items/patch-items-images-byid.md): #### Permission Requirements - Permission Path: **Inventory Items > Item Editor > Pictures Tab** (editor access required)
 - [DELETE /items/{itemId}/images/{imageId}](https://developer.yellowdogsoftware.com/rest/fetch/api/items/delete-items-images-byid.md): #### Permission Requirements - Permission Path: **Inventory Items > Item Editor > Pictures Tab** (editor access required)
 - [POST /items/{id}/retails](https://developer.yellowdogsoftware.com/rest/fetch/api/items/post-items-retails.md): This endpoint allows you to set a new retail price for an item in a store to take effect at a scheduled future time. It will respond with an error if the given timestamp refers to a time in the past.
## ManualAdjusts

 - [POST /manualadjusts](https://developer.yellowdogsoftware.com/rest/fetch/api/manualadjusts/post-manualadjusts.md): #### Permission Requirements - Permission Path: **Inventory Items > Item List > Adjust Item OnHand**
## MetaInfo

 - [GET /metainfo](https://developer.yellowdogsoftware.com/rest/fetch/api/metainfo/get-metainfo.md): In Yellow Dog, the user is able to configure the Names that are used on buttons to make the user interface more friendly for their particular use. This endpoint will display the values of these name c
## ProductionGroups

 - [GET /productiongroups](https://developer.yellowdogsoftware.com/rest/fetch/api/productiongroups/get-productiongroups.md): Production Groups indicate which team produces the recipe.
## PurchaseOrders

 - [POST /purchaseOrders/{id}/requestTieredApproval](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/post-purchaseorders-tieredapproval-request.md)
 - [PUT /purchaseOrders/tieredApproval](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/put-purchaseorders-tieredapproval.md)
 - [GET /purchaseOrders](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/get-purchaseorders.md): Example use cases `api/v2/purchaseOrders?pageNumber=1&pageSize=100&Filter=committed>2024-03-05T06:06:58.529Z&Filter=lastUpdated>2024-03-06&orderBy=committed` will get the first page of purchase orders
 - [POST /purchaseOrders](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/post-purchaseorders.md): #### Permission Requirements - Permission Path: **Purchasing > Purchase Orders > Purchase Order List > Create**
 - [GET /purchaseOrders/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/get-purchaseorders-byid.md)
 - [GET /purchaseOrders/byToken](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/get-purchaseorders-bytoken.md)
 - [GET /purchaseOrders/{id}/approvalStatus](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/get-purchaseorders-approvalstatus-byid.md)
 - [GET /purchaseOrders/approvalStatusByToken](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/get-purchaseorders-approvalstatus-bytoken.md)
 - [PATCH /purchaseOrders/updateCommitted](https://developer.yellowdogsoftware.com/rest/fetch/api/purchaseorders/patch-leafroute.md): Infrequently there are use cases where a previously committed purchase order would be allowed to have new lines added or other adjustments to the document. The following properties of a committed purc
## Receipts

 - [GET /receipts](https://developer.yellowdogsoftware.com/rest/fetch/api/receipts/get-receipts.md): #### Permission Requirements - Permission Path: **Purchasing > Receipts**
 - [POST /receipts](https://developer.yellowdogsoftware.com/rest/fetch/api/receipts/post-receipts.md): Using this endpoint will create uncommitted receipts. Marking a receipt as committed and thus making the associated adjustments to the item inventory will need to be performed using the Yellow Dog Inv
 - [GET /receipts/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/receipts/get-receipts-byid.md)
## Recipes

 - [POST /recipes/{recipeId}/images](https://developer.yellowdogsoftware.com/rest/fetch/api/recipes/post-recipes-images.md): #### Permission Requirements - Permission Path: **Recipes > Recipe Editor > Pictures and Links Tabs** (editor access required)
 - [PATCH /recipes/{recipeId}/images/{imageId}](https://developer.yellowdogsoftware.com/rest/fetch/api/recipes/op-recipes-images-byid.md): #### Permission Requirements - Permission Path: **Recipes > Recipe Editor > Pictures and Links Tabs** (editor access required)
 - [DELETE /recipes/{recipeId}/images/{imageId}](https://developer.yellowdogsoftware.com/rest/fetch/api/recipes/delete-recipes-images-byid.md): #### Permission Requirements - Permission Path: **Recipes > Recipe Editor > Pictures and Links Tabs** (editor access required)
 - [GET /recipes](https://developer.yellowdogsoftware.com/rest/fetch/api/recipes/get-recipes.md): This endpoint only returns the list of Recipes, without Ingredients, AttachedFiles, and Links. If the ingredients are needed, then make an another API call to GET Recipe By ID with the Expand=Ingredie
 - [GET /recipes/{recipeId}](https://developer.yellowdogsoftware.com/rest/fetch/api/recipes/get-recipes-byid.md)
## RecipeTypes

 - [GET /recipetypes](https://developer.yellowdogsoftware.com/rest/fetch/api/recipetypes/get-recipetypes.md): RecipeType is a way to organize recipes into groups.
## Requests

 - [POST /requests](https://developer.yellowdogsoftware.com/rest/fetch/api/requests/post-requests.md): #### Permission Requirements - Permission Path: **Purchasing > Requests > Request List > Create**
 - [PATCH /requests/{id}/Commit](https://developer.yellowdogsoftware.com/rest/fetch/api/requests/patch-requests-commit.md)
 - [GET /requests/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/requests/get-requests-byid.md)
 - [PATCH /requests/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/requests/patch-requests-byid.md)
## Sessions

 - [GET /sessions](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/get-sessions.md)
 - [POST /sessions](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/post-sessions.md)
 - [PUT /sessions](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/put-sessions.md)
 - [GET /sessions/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/get-sessions-byid.md)
 - [DELETE /sessions/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/delete-sessions-byid.md)
 - [POST /sessions/{id}/sessionItems](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/post-sessions-sessionitems.md)
 - [PUT /sessions/{id}/sessionItems/{sessionItemId}/count](https://developer.yellowdogsoftware.com/rest/fetch/api/sessions/put-sessions-sessionitems-count.md)
## Stores

 - [GET /stores](https://developer.yellowdogsoftware.com/rest/fetch/api/stores/get-stores.md)
 - [GET /stores/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/stores/get-stores-byid.md)
 - [GET /stores/{id}/items](https://developer.yellowdogsoftware.com/rest/fetch/api/stores/get-stores-items.md): <details id="GetstoreItems-ReqDesc-OneOfThreeEp"> <summary> Three Endpoints Retrieve Item Data </summary> | | [GET /items](/rest/fetch/api/items/get-items) | Multiple items from any store unless filt
 - [GET /stores/{id}/interfaces/ThirdPartyCodes](https://developer.yellowdogsoftware.com/rest/fetch/api/stores/get-stores-interfaces.md)
## ThirdPartyCodes

 - [GET /interfaces/thirdPartyCodes](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/op-interfaces-thirdpartycodes.md)
 - [POST /interfaces/thirdPartyCodes](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/post-interfaces-thirdpartycodes.md): ##### About Third-Party Interface Codes Third-Party Interface Codes serve multiple use cases, as described below. The primary use case is to define POS specific annotations known as Third Party Codes
 - [PUT /interfaces/thirdPartyCodes](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/put-interfaces-thirdpartycodes.md)
 - [DELETE /interfaces/thirdPartyCodes](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/delete-interfaces-thirdpartycodes.md)
 - [GET /interfaces/thirdPartyCodes/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/get-interfaces-thirdpartycodes-byid.md)
 - [DELETE /interfaces/thirdPartyCodes/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartycodes/delete-interfaces-thirdpartycodes-byid.md)
## ThirdParty

 - [POST /third-party/{syncId}/items](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdparty/post-third-party-items.md): This endpoint allows for bulk upserting of TPItems. ### Creating a TPItems The fields that are required to create a TPLocation are `type` and `code` ### Updating a TPItems include the query parameter,
 - [POST /third-party/{syncId}/locations](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdparty/post-third-party-locations.md): This endpoint allows for bulk upserting of TPLocations. ### Creating a TPLocations The fields that are required to create a TPLocation are `type` and `code` ### Updating a TPLocations include the quer
## ThirdPartySessions

 - [GET /thirdPartySessions](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartysessions/get-thirdpartysessions.md)
 - [POST /thirdPartySessions](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartysessions/post-thirdpartysessions.md)
 - [GET /thirdPartySessions/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/thirdpartysessions/get-thirdpartysessions-byid.md)
## Transactions

 - [GET /transactions](https://developer.yellowdogsoftware.com/rest/fetch/api/transactions/get-transactions.md): This endpoint allows for pulling of raw transaction information that is stored in the Yellow Dog Database. As this data is considered to be raw and not processed there is not a way to determine dir
 - [POST /transactions](https://developer.yellowdogsoftware.com/rest/fetch/api/transactions/post-transactions.md): ##### Matching and Processing This endpoint is all about submitting sales transactions to Yellow Dog. <details id="transaction-number"> <summary> Identifying sales transactions. </summary> Three prope
 - [GET /transactions/store/{storeId}](https://developer.yellowdogsoftware.com/rest/fetch/api/transactions/get-transactions-store.md)
 - [GET /transactions/{thirdPartyId}](https://developer.yellowdogsoftware.com/rest/fetch/api/transactions/get-transactions-byid.md): This endpoint is intended to be used for looking up a specific Transaction record.
## Transfers

 - [PATCH /transfers/{id}/Accept](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/patch-transfers-accept.md): Accepting a Transfer is an indication that the Store on the receiving side of the Item movement has been received at the quantities indicated by the accepting quantity. #### Permission Requirements -
 - [PATCH /transfers/{id}/Issue](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/patch-transfers-issue.md): Issuing a Transfer is an indication that the Store on the sending side of the Item movement has been sent to the Store on the receiving side. #### Permission Requirements - Permission Path: **Purchasi
 - [GET /transfers](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/get-transfers.md): Example use cases `api/v2/transfers?pageNumber=1&pageSize=100&Filter=committed>2024-03-05T06:06:58.529Z&Filter=lastUpdated>2024-03-06&orderBy=committed` will get the first page of transfers where the
 - [POST /transfers](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/post-transfers.md): #### Permission Requirements - Permission Path: **Purchasing > Transfers > Transfer Editor > Issue**
 - [POST /transfers/{id}/lines](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/post-transfers-lines.md): #### Permission Requirements - Permission Path: **Purchasing > Transfers > Transfer Editor > Issue**
 - [PATCH /transfers/{id}/lines](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/patch-transfers-lines.md): #### Permission Requirements - Permission Path: **Purchasing > Transfers > Transfer Editor > Issue**
 - [DELETE /transfers/{id}/lines](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/delete-transfers-lines.md): #### Permission Requirements - Permission Path: **Purchasing > Transfers > Transfer Editor > Issue**
 - [GET /transfers/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/get-transfers-byid.md)
 - [PATCH /transfers/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/transfers/patch-transfers-byid.md): #### Permission Requirements - Permission Path: **Purchasing > Transfers > Transfer Editor > Issue**
## Vendors

 - [GET /vendors](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/get-vendors.md)
 - [POST /vendors](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/post-vendors.md)
 - [PUT /vendors](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/put-vendors.md): If the stores array is null or empty, then Store associations will not be updated. If you want to set the availability of a store for a given vendor, add elements to the `stores` field, with the `Avai
 - [GET /vendors/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/get-vendors-byid.md)
 - [DELETE /vendors](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/delete-vendors.md)
 - [DELETE /vendors/{id}](https://developer.yellowdogsoftware.com/rest/fetch/api/vendors/delete-vendors-byid.md)
