Fetch API (v3.0: 3.21.3.0)

Download OpenAPI description
Overview
API Support Group api@yellowdogsoftware.com
Languages
Servers
Mock server
https://developer.yellowdogsoftware.com/_mock/fetch/api/

Accounting

Accounting Export Reports that can be consumed by 3rd Party accounting systems

Operations

AttachedFiles

Items, Recipes, and Purchasing Documents are able to have files of record or images associated to them.

Operations

CountSheets

A dynamic list of Items that are designed to aide with physical inventories. Countsheets are based on a static list of items, Levels, and Flags

Operations

Currency

Operations used to manage currency conversion for the database. These are used when multiple currencies are used in a database.

Operations

Dimensions

Attributes that are available for assigning to an Item. Attributes can be like a Size or Color.

Operations

Flags

Flags allow you to indicate storage locations, making ordering and physical inventories easier.

Operations

Inventory

Item Inventory OnHand information.

Operations

Invoices

A Purchasing document

Operations

ItemAliases

UPCs or additional SKUs to for an Item.

Operations

Items

Product information that is tracked in Yellow Dog Inventory.

Operations

ManualAdjusts

A Manual Adjustment will affect an Item's OnHand.

Operations

MetaInfo

Database specific configuration information

Operations

PurchaseOrders

A Purchasing document

Operations

Receipts

A Receiving document

Operations

Recipes

Collections of items and recipes, with quantities, that are used to create other items.

Operations

Requests

A requisition for purchasing or transfering an item.

Operations

Sessions

Associate a count to an Item, these sessions can be used for Purchasing Documents or Physical Inventories.

Operations

Stores

Business Entities or locations of a single business entity that need to maintain their own inventory records.

Operations

ThirdPartyCodes

Additional configuration options that control item, store or level behavior with third-party integrations

Operations

Gets all Third Party Codes

Request

Query
FilterArray of strings

Filter Options:

  • code
  • type
OrderByArray of strings

Order By Options:

  • code
  • type
PageNumberinteger(int32)

Page Number for the result set.

This is expected to be an integer value greater than 0. Defaults to 1 when not passed in.

For more information see the Getting Started Section for Pagination.

PageSizeinteger(int32)

Page Size

  • Default page size: 100
  • Max page size: 500

This is expected to be an integer value greater than 0. Defaults to 100 when not passed in.

For more information see the Getting Started Section for Pagination.

curl -i -X GET \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes?Filter=string&OrderBy=string&PageNumber=0&PageSize=0' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/jsonArray [
idstring(uuid)

A unique identifier for the TPCode Record

This is autogenerated by Yellow Dog on creation of the record.

typestringnon-emptyrequired

The Type of code being entered. This should be titled specifically for the third party integrator in Pascal case.

A common way to type specifically is to prepend the Type with the name of the integration.

This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"

codestringnon-emptyrequired

Identifier used by the Integrator to match certain behavior on their side of the integration.

descriptionstringnon-emptyrequired

User friendly description that will be displayed to the user as part of a drop down box titled by the type

storeobject(Api.Models.Dto.TPStore)
]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "type": "string", "code": "string", "description": "string", "store": { … } } ]

Creates Third Party Codes

Request

Standard Request Example

Third Party Codes are configuration options exposed to the Yellow Dog Inventory user that allow for behavior changes for an item or a setting. A common use case is for managing what the tax code might be for a particular item so that the integration is able to associate the proper tax rate on sale of the item.

POST /thirdPartyCodes

[
	{
		"type": "IntegrationNameTaxGrouping", // This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"
		"code": "1", // Identifier used by the Integrator to match certain behavior on their side of the integration.
		"description": "local tax" // User friendly description that will be displayed to the user as part of a drop down box titled by the `type`
		"store": {
			"id": "123e4567-e89b-12d3-a456-426655440000" // Id of the store this Code should be active for. If this code should be active for all stores use an id value of "00000000-0000-0000-0000-000000000000"
		}
	}
]

Modifiers Example

If the third party integrator would like to allow enabling of true/false values for allowing Yellow Dog clients to enable item behavior in the integration, we recommend that this be accomplished by the following example.

POST /thirdPartyCodes

[
	{
		"type": "IntegrationNameIsModifier",
		"code": "true", 
		"description": "Is a Modifier" 
		"store": {
			"id": "123e4567-e89b-12d3-a456-426655440000" 
		}
	},
	{
		"type": "IntegrationNameIsModifier", 
		"code": "false", 
		"description": "Is not a modifier" 
		"store": {
			"id": "123e4567-e89b-12d3-a456-426655440000" 
		}
	}
]
Query
suppressOutputboolean
Default true
BodyArray [
idstring(uuid)

A unique identifier for the TPCode Record

This is autogenerated by Yellow Dog on creation of the record.

typestringnon-emptyrequired

The Type of code being entered. This should be titled specifically for the third party integrator in Pascal case.

A common way to type specifically is to prepend the Type with the name of the integration.

This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"

codestringnon-emptyrequired

Identifier used by the Integrator to match certain behavior on their side of the integration.

descriptionstringnon-emptyrequired

User friendly description that will be displayed to the user as part of a drop down box titled by the type

storeobject(Api.Models.Dto.GenericObject)
]
curl -i -X POST \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes?suppressOutput=true' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "type": "string",
      "code": "string",
      "description": "string",
      "store": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    }
  ]'

Responses

Received Request with no values in the body.

Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "type": "string", "code": "string", "description": "string", "store": { … } } ]

Updates Third Party Codes

Request

Query
suppressOutputboolean
Default true
BodyArray [
idstring(uuid)

A unique identifier for the TPCode Record

This is autogenerated by Yellow Dog on creation of the record.

typestringnon-emptyrequired

The Type of code being entered. This should be titled specifically for the third party integrator in Pascal case.

A common way to type specifically is to prepend the Type with the name of the integration.

This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"

codestringnon-emptyrequired

Identifier used by the Integrator to match certain behavior on their side of the integration.

descriptionstringnon-emptyrequired

User friendly description that will be displayed to the user as part of a drop down box titled by the type

storeobject(Api.Models.Dto.GenericObject)
]
curl -i -X PUT \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes?suppressOutput=true' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "type": "string",
      "code": "string",
      "description": "string",
      "store": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
      }
    }
  ]'

Responses

Returns the updated ThirdPartyCodes, if suppressOutput parameter is set to false.

Bodyapplication/jsonArray [
idstring(uuid)

A unique identifier for the TPCode Record

This is autogenerated by Yellow Dog on creation of the record.

typestringnon-emptyrequired

The Type of code being entered. This should be titled specifically for the third party integrator in Pascal case.

A common way to type specifically is to prepend the Type with the name of the integration.

This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"

codestringnon-emptyrequired

Identifier used by the Integrator to match certain behavior on their side of the integration.

descriptionstringnon-emptyrequired

User friendly description that will be displayed to the user as part of a drop down box titled by the type

storeobject(Api.Models.Dto.TPStore)
]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "type": "string", "code": "string", "description": "string", "store": { … } } ]

Bulk delete Third Party Codes

Request

Query
suppressOutputboolean
Default true
BodyArray [
string(uuid)
]
curl -i -X DELETE \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes?suppressOutput=true' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json-patch+json' \
  -d '[
    "497f6eca-6276-4993-bfeb-53cbbbba6f08"
  ]'

Responses

Rate limiting quota exceeded

Apply pause on further requests to the api using a wait method for the amount of seconds presented in the Response Header Key 'Retry-After'.

To prevent running into further instances of this rate limiting, use the Response Headers returned back from all other requests to ensure there is enough buffer.

For further information see Rate Limiting Section of Getting Started of api documentation site.

Response
No response example

Gets Third Party Code by Id

Request

Path
idstring(uuid)required
curl -i -X GET \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
idstring(uuid)

A unique identifier for the TPCode Record

This is autogenerated by Yellow Dog on creation of the record.

typestringnon-emptyrequired

The Type of code being entered. This should be titled specifically for the third party integrator in Pascal case.

A common way to type specifically is to prepend the Type with the name of the integration.

This will be displayed in the Interfaces tab under the Accounting/Other section as "Integration Name Tax Grouping"

codestringnon-emptyrequired

Identifier used by the Integrator to match certain behavior on their side of the integration.

descriptionstringnon-emptyrequired

User friendly description that will be displayed to the user as part of a drop down box titled by the type

storeobject(Api.Models.Dto.TPStore)
Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "type": "string", "code": "string", "description": "string", "store": { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "code": "string", "name": "string" } }

Deleting a Third Party Code

Request

Path
idstring(uuid)required

Third Party Code Id

curl -i -X DELETE \
  'https://developer.yellowdogsoftware.com/_mock/fetch/api/api/v3/interfaces/thirdPartyCodes/{id}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Rate limiting quota exceeded

Apply pause on further requests to the api using a wait method for the amount of seconds presented in the Response Header Key 'Retry-After'.

To prevent running into further instances of this rate limiting, use the Response Headers returned back from all other requests to ensure there is enough buffer.

For further information see Rate Limiting Section of Getting Started of api documentation site.

Response
No response example

ThirdParty

Third Party Mappings with Yellow Dog Inventory

Operations

ThirdPartySessions

Records that increment or decrement inventory based on customer interactions with a store

Operations

Transactions

Records that increment or decrement inventory based on customer interactions with a store

Operations

Transfers

A record of movement of Items from one Store to another.

Operations

Vendors

Vendors, Suppliers, Distributors, or Manufacturors that provide Items into the Inventory.

Operations