# Catalog

## Introduction

Through the endpoints included in the Catalog section, you will be able to:

* Retrieve all the available products
* Get information about the products' variants
* Retrieve information about the options available for a specific store (corresponding to a determined printing/fulfillment location i.e. North America or Europe)

## Endpoints

### Products

## Show products

> This API endpoint retrieves a list of all available products.

```json
{"openapi":"3.0.1","info":{"title":"merchOne API","version":"Beta"},"servers":[{"url":"https://api.merchone.com/api/beta","description":"API Beta"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"}},"responses":{"UnauthorizedError":{"description":"Unauthorized"}}},"paths":{"/products":{"get":{"summary":"Show products","description":"This API endpoint retrieves a list of all available products.","responses":{"200":{"description":"Request completed successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","description":"An array of product objects containing the following attributes","items":{"type":"object","properties":{"id":{"type":"integer","description":"The unique identifier for the product."},"name":{"type":"string","description":"The name of the product."},"variants":{"type":"integer","description":"The number of variants available for the product."},"sku":{"type":"string","description":"The SKU (Stock-Keeping Unit) code for the product."},"dpi":{"type":"integer","description":"The minimum DPI (dots per inch) for the product."},"type":{"type":"string","description":"The type of product."},"images":{"type":"array","description":"An array of image objects containing the following attributes.","items":{"type":"object","properties":{"id":{"type":"integer","description":"The unique identifier for the image."},"original":{"type":"string","description":"The URL of the original image."},"thumb":{"type":"string","description":"The URL of the thumbnail image."}}}}}}}}}}}},"401":{"$ref":"#/components/responses/UnauthorizedError"}}}}}}
```

### Product's variants

## Show product's variants

> This API endpoint retrieves a list of all available product's variants.

```json
{"openapi":"3.0.1","info":{"title":"merchOne API","version":"Beta"},"servers":[{"url":"https://api.merchone.com/api/beta","description":"API Beta"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"}},"responses":{"UnauthorizedError":{"description":"Unauthorized"},"LaravelError":{"description":"Unprocessable entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"Error":{"type":"object","properties":{"message":{"type":"string","default":"422 Unprocessable Entity"},"errors":{"type":"object"},"status_code":{"type":"integer","default":422}}}}},"paths":{"/products/{product_id}":{"get":{"summary":"Show product's variants","description":"This API endpoint retrieves a list of all available product's variants.","parameters":[{"name":"product_id","in":"path","description":"ID of product to return","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"Request completed successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer"},"code":{"type":"string"},"variant_id":{"type":"integer"},"variant_code":{"type":"string"},"sku":{"type":"string"},"name":{"type":"string"},"printfile":{"type":"object"},"price":{"type":"number"},"price_details":{"type":"object"},"shipping_countries":{"type":"array","items":{"type":"integer"}},"options":{"type":"object"}}}}}}}}},"401":{"$ref":"#/components/responses/UnauthorizedError"},"422":{"$ref":"#/components/responses/LaravelError"}}}}}}
```

### Variant's options

## Show variant's options

> This API endpoint retrieves a list of all available variant's options.\<br />\<br />The \`variant\_id\` can be checked at \`/api/beta/products/{product\_id}\`

```json
{"openapi":"3.0.1","info":{"title":"merchOne API","version":"Beta"},"servers":[{"url":"https://api.merchone.com/api/beta","description":"API Beta"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"}},"responses":{"UnauthorizedError":{"description":"Unauthorized"},"LaravelError":{"description":"Unprocessable entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"Error":{"type":"object","properties":{"message":{"type":"string","default":"422 Unprocessable Entity"},"errors":{"type":"object"},"status_code":{"type":"integer","default":422}}}}},"paths":{"/variants/{variant_id}":{"get":{"summary":"Show variant's options","description":"This API endpoint retrieves a list of all available variant's options.<br /><br />The `variant_id` can be checked at `/api/beta/products/{product_id}`","parameters":[{"name":"variant_id","in":"path","description":"ID of the variant","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"Request completed successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer"},"code":{"type":"string"},"variant_id":{"type":"integer"},"variant_code":{"type":"string"},"sku":{"type":"string"},"name":{"type":"string"},"printfile":{"type":"object"},"price":{"type":"number"},"price_details":{"type":"object"},"shipping_countries":{"type":"array","items":{"type":"integer"}},"options":{"type":"object"}}}}}}}}},"401":{"$ref":"#/components/responses/UnauthorizedError"},"422":{"$ref":"#/components/responses/LaravelError"}}}}}}
```

### SKU's variant options

## Show SKU's variant options

> This API endpoint retrieves a list of all available SKU's variant options.\<br />\<br />The \`variant\_id\` can be checked at \`/api/beta/products/{product\_id}\`

```json
{"openapi":"3.0.1","info":{"title":"merchOne API","version":"Beta"},"servers":[{"url":"https://api.merchone.com/api/beta","description":"API Beta"}],"security":[{"basicAuth":[]}],"components":{"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"}},"responses":{"UnauthorizedError":{"description":"Unauthorized"},"LaravelError":{"description":"Unprocessable entity","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"schemas":{"Error":{"type":"object","properties":{"message":{"type":"string","default":"422 Unprocessable Entity"},"errors":{"type":"object"},"status_code":{"type":"integer","default":422}}}}},"paths":{"/variants/{variant_id}/combinations":{"get":{"summary":"Show SKU's variant options","description":"This API endpoint retrieves a list of all available SKU's variant options.<br /><br />The `variant_id` can be checked at `/api/beta/products/{product_id}`","parameters":[{"name":"variant_id","in":"path","description":"ID of variant to return","required":true,"schema":{"type":"integer","format":"int64"}}],"responses":{"200":{"description":"Request completed successfully.","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"type":"object","properties":{"sku":{"type":"string"},"name":{"type":"string"},"price":{"type":"integer"},"price_details":{"type":"object"},"options":{"type":"array"}}}}}}}}},"401":{"$ref":"#/components/responses/UnauthorizedError"},"422":{"$ref":"#/components/responses/LaravelError"}}}}}}
```
