Skip to main content

Vendor

Security

GET /vendor/master

GET /vendor/current

GET /vendor/list

POST /vendor

POST /vendor/entity/<entity_id>

DELETE /vendor/entity/<entity_id>

POST /vendor/updateEntitiesWithDependencies

GET /vendor/document/<_id>

PATCH /vendor/document/<_id>

DELETE /vendor/document/<_id>

POST /vendor/documents/dependencies

GET /vendor/mapping/entity/<entity_id>

POST /vendor/mapping/entity/<entity_id>

POST /vendor/mapping

Data Models

Security

jwt-bearer-token

apiKey

API Key

Name

Authorization

In

header

Endpoints

GET /vendor/master

Summary

Gets a master list of vendor entities regardless of the site.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

query

$top

integer

No

The maximum documents to return. For example, if top is 100, and skip is 0, the system returns documents 1 to 100.

query

$skip

integer

No

The documents to skip before returning. For example, if top is 100, and skip is 100, the system returns documents 101 to 200.

query

$filter

string

No

A filter expression in OData v4 format

query

$orderby

string

No

An order by expression in OData v4 format

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_mappings

boolean

No

Includes the mappings for the document in the response

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

query

include_inactive

boolean

No

Includes the documents that are inactive for the current sites

Responses

Code

Description

Schema

200

Success

vendor_list

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

GET /vendor/current

Summary

Gets a list of currently effective active vendor entities for the specified sites as of the given effective_date:

effective_date=2099-11-18T19:04:58.124Z

To narrow the list to specific entity_ids:

?effective_date=2099-11-18T19:04:58.124Z&entity_ids=['578e98111fa261f4867bdf12','231e98111fa261f4867bdf08']

To include the audit fields:

?include_audit=true

To include the inactive documents:

?include_inactive=true

To populate nested entities:

?include_nested=true

To populate only specified nested entities:

?include_entities="menu-category","menu-item-group"

Other filters can be applied against the entity documents by using the $filter parameter

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

header

X-SITE-IDs

[ string ]

No

The unique identifiers (UIDs) of the site to manage data for

query

$filter

string

No

A filter expression in OData v4 format

query

$top

integer

No

The maximum documents to return. For example, if top is 100, and skip is 0, the system returns documents 1 to 100.

query

$skip

integer

No

The documents to skip before returning. For example, if top is 100, and skip is 100, the system returns documents 101 to 200.

query

$orderby

string

No

An order by expression in OData v4 format

query

effective_date

string

Yes

The date and time to query against. If the entity is updated on a specific date, then specifying an effective_date prior to that date returns a previous version of the entity.

query

entity_ids

[ string ]

No

An array of entity identifiers

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_mappings

boolean

No

Includes the mappings for the document in the response

query

include_mappings_for_entities

[ string ]

No

Specifies entity types for which mappings are presented as a part of the response (For example, include_mappings_for_entities_param=&.

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

query

include_audit

boolean

No

Adds audit fields to each document when returning a result (is_active, is_master, created_at, created_by, updated_at, updated_by)

query

include_inactive

boolean

No

Includes the documents that are inactive for the current sites

Responses

Code

Description

Schema

200

Success

vendor_list

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

GET /vendor/list

Summary

Gets a list of currently effective active vendor entities for the specified sites as of the given effective_date:

effective_date=2099-11-18T19:04:58.124Z

To narrow the list to specific entity_ids:

?effective_date=2099-11-18T19:04:58.124Z&entity_ids=['578e98111fa261f4867bdf12','231e98111fa261f4867bdf08']

To include the audit fields:

?include_audit=true

To include the inactive documents:

?include_inactive=true

To populate nested entities:

?include_nested=true

To populate only specified nested entities:

?include_entities="menu-category","menu-item-group"

Other filters can be applied against the entity documents by using the $filter parameter

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

header

X-SITE-IDs

[ string ]

No

The unique identifiers (UIDs) of the site to manage data for

query

$filter

string

No

A filter expression in OData v4 format

query

$top

integer

No

The maximum documents to return. For example, if top is 100, and skip is 0, the system returns documents 1 to 100.

query

$skip

integer

No

The documents to skip before returning. For example, if top is 100, and skip is 100, the system returns documents 101 to 200.

query

$orderby

string

No

An order by expression in OData v4 format

query

effective_date

string

Yes

The date and time to query against. If the entity is updated on a specific date, then specifying an effective_date prior to that date returns a previous version of the entity.

query

entity_ids

[ string ]

No

An array of entity identifiers

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

query

include_audit

boolean

No

Adds audit fields to each document when returning a result (is_active, is_master, created_at, created_by, updated_at, updated_by)

query

include_inactive

boolean

No

Includes the documents that are inactive for the current sites

query

include_mappings_for_entities

[ string ]

No

Specifies entity types for which mappings are presented as a part of the response (For example, include_mappings_for_entities_param=&#39;product&#39;,&#39;product-price&#39;, etc).

Responses

Code

Description

Schema

200

Success

vendor_list

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor

Summary

Adds a new vendor.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

body

body

vendor_create

Yes

The JSON formatted request

Responses

Code

Description

Schema

200

Success

vendor

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor/entity/<entity_id>

Summary

Creates/Updates vendors.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

path

entity_id

string

Yes

The identifier of the entity

body

body

[ vendor_create ]

Yes

The JSON formatted request

Responses

Code

Description

Schema

200

Success

[ vendor ]

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

DELETE /vendor/entity/<entity_id>

Summary

Deletes an entity and all versions of the entity.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

path

entity_id

string

Yes

The identifier of the entity

Responses

Code

Description

Schema

200

Success

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor/updateEntitiesWithDependencies

Summary

Creates/Updates vendors with the mappings.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

header

X-SITE-IDs

[ string ]

No

The unique identifiers (UIDs) of the site to manage data for

body

body

[ vendor_create ]

Yes

Supports the mappings field (array/boolean) for each document. With mappings: True mappings are created for the current date and sites from the X-SITE-IDs header.

Responses

Code

Description

Schema

200

Success

vendor_list

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

GET /vendor/document/<_id>

Summary

Gets one vendor by a specific document identifier.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

path

_id

string

Yes

The identifier of the document

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

query

include_mappings_for_entities

[ string ]

No

Specifies entity types for which mappings are presented as a part of the response (For example, include_mappings_for_entities_param=&#39;product&#39;,&#39;product-price&#39;, etc).

Responses

Code

Description

Schema

200

Success

vendor

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

PATCH /vendor/document/<_id>

Summary

Partially updates a vendor.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

path

_id

string

Yes

The identifier of the document

query

include_nested

boolean

No

Hydrates-related nested objects when returning a result (For example, populate a menu with menu categories and menu groups)

query

include_entities

[ string ]

No

Specifies entity_types to be populated by nesting mechanism (For example, include_entities=['menu-category'] for menu call - populate a menu with menu categories)

body

body

vendor_edit

No

The JSON of the category being patched

Responses

Code

Description

Schema

200

Success

vendor_edit

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

DELETE /vendor/document/<_id>

Summary

Deletes a vendor.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

path

_id

string

Yes

The identifier of the document

Responses

Code

Description

Schema

200

Success

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor/documents/dependencies

Summary

Checks for document dependencies.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

body

body

[ vendor ]

Yes

The JSON formatted request

Responses

Code

Description

Schema

200

Success

vendor_list

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

GET /vendor/mapping/entity/<entity_id>

Summary

Gets a list of vendor mappings for specified sites.

Request Parameters

In

FieldName

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

header

X-SITE-IDs

[ string ]

No

The unique identifiers (UIDs) of the site to manage data for

path

entity_id

string

Yes

The identifier of the entity

query

$top

integer

No

The maximum documents to return. For example, if top is 100, and skip is 0, the system returns documents 1 to 100.

query

$skip

integer

No

The documents to skip before returning. For example, if top is 100, and skip is 100, the system returns documents 101 to 200.

query

$filter

string

No

A filter expression in OData v4 format

query

$orderby

string

No

An order by expression in OData v4 format

query

include_inactive

boolean

No

Includes the documents that are inactive for the current sites

Responses

Code

Description

Schema

200

Success

mapping_list_response

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor/mapping/entity/<entity_id>

Summary

Creates the list of vendor mappings for an entity and sites.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

header

X-SITE-IDs

[ string ]

No

The unique identifiers (UIDs) of the site to manage data for

path

entity_id

string

Yes

The identifier of the entity

body

body

mappings_update_request

Yes

The array of the inventory item venue mappings being added

Responses

Code

Description

Schema

200

Success

mappint_list_response

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

POST /vendor/mapping

Summary

Adds a new vendor mapping.

Request Parameters

In

Field Name

Type

Required

Description

header

X-COMPANY-ID

string

Yes

The identifier of the company to manage data for

body

body

[ mapping_create_request ]

Yes

The JSON of the recipe venue mapping being added

Responses

Code

Description

Schema

200

Success

mapping_list_response

400

Bad request, for more information look at body error

403

Invalid token

404

Not Found

422

Unprocessable error

default

Unexpected Error

Data Models

vendor

vendor_create

vendor_edit

vendor_list

vendor_type

vendor_type_create

vendor_type_edit

vendor_type_list

name

code

_id

company_id

entity_id

is_master

is_active

external_id

created_by

updated_by

created_at

updated_at

vendor

The vendor information.

Field Name

Type

Required

Description

name

string

Yes

The vendor name

code

string

Yes

The external identifier for the vendor

vendor_type_entity_id

string, object

No

The references vendor type

email_address

string

No

The valid email address

contact_names

[ string ]

No

The contact names

notes

string

No

The notes

addresses

[ object ]

No

The addresses for the vendor

phones

[ object ]

No

The phones for the vendor

inventory_items

[ object ]

No

The vendor items

_id

_id

No

company_id

company_id

No

entity_id

entity_id

No

is_master

is_master

No

is_active

is_active

No

external_id

external_id

No

created_by

created_by

No

updated_by

updated_by

No

created_at

created_at

No

updated_at

updated_at

No

vendor_create

The vendor information.

Field Name

Type

Required

Description

name

string

Yes

The vendor name

code

string

Yes

The external identifier for the vendor

vendor_type_entity_id

string, object

No

The references vendor type

email_address

string

No

The valid email address

contact_names

[ string ]

No

The contact names

notes

string

No

The notes

addresses

[ object ]

No

The addresses for the vendor

phones

[ object ]

No

The phones for the vendor

inventory_items

[ object ]

No

The vendor items

entity_id

entity_id

No

external_id

external_id

No

vendor_edit

The vendor information.

Field Name

Type

Description

name

string

The vendor name

code

string

The external identifier for the vendor

vendor_type_entity_id

string, object

The references vendor type

email_address

string

The valid email address

contact_names

[ string ]

The contact names

notes

string

The notes

addresses

[ object ]

The addresses for the vendor

phones

[ object ]

The phones for the vendor

inventory_items

[ object ]

The vendor items

external_id

external_id

vendor_list

Field Name

Type

Description

total

integer

items

[ vendor ]

vendor_type

The look up table containing the vendor type information.

Field Name

Type

Required

Description

code

string

Yes

The vendor type code

name

string

Yes

The vendor type name

description

string

Yes

The vendor type description

_id

_id

No

company_id

company_id

No

entity_id

entity_id

No

is_master

is_master

No

is_active

is_active

No

external_id

external_id

No

created_by

created_by

No

updated_by

updated_by

No

created_at

created_at

No

updated_at

updated_at

No

vendor_type_create

The look up table containing the vendor type information.

Field Name

Type

Required

Description

code

string

Yes

The vendor type code

name

string

Yes

The vendor type name

description

string

Yes

The vendor type description

entity_id

entity_id

No

external_id

external_id

No

vendor_type_edit

The look up table containing the vendor type information.

Field Name

Type

Description

code

string

The vendor type code

name

string

The vendor type name

description

string

The vendor type description

external_id

external_id

vendor_type_list

Field Name

Type

Description

total

integer

items

[ vendor_type ]

name

Field Name

Type

Description

name

string

code

Select the international code of the currency according to ISO 4217.

Field Name

Type

Description

code

string

Select the international code of the currency according to ISO 4217

_id

The auto-assigned system document identifier.

Field Name

Type

Description

_id

string

The auto-assigned system document identifier

company_id

The identifier of the company who owns the document.

Field Name

Type

Description

company_id

string

The identifier of the company that owns the document

entity_id

The auto-assigned unique identifier (UID) of the entity, set on creation. All future versions of the entity share the same entity_id.

Field Name

Type

Description

entity_id

string

The auto-assigned UID of the entity, set on creation. All future versions of the entity share the same entity_id.

is_master

Field Name

Type

Description

is_master

boolean

is_active

Marking property is the essence of active documents. Sets in true by default.

Field Name

Type

Description

is_active

boolean

Marking property is the essence of active documents. Sets in true by default.

external_id

Field Name

Type

Description

external_id

string

created_by

The identifier of the OPRA user or site that created the document.

Field Name

Type

Description

created_by

string

The identifier of the OPRA user or site that created the document

updated_by

The identifier of the OPRA user or site that last updated the document.

Name

Type

Description

updated_by

string

The identifier of the OPRA user or site that last updated the document

created_at

The last date and time the document was updated.

Field Name

Type

Description

created_at

string

The last date and time the document was updated

updated_at

The last date and time the document was updated.

Field Name

Type

Description

updated_at

string

The last date and time the document was updated