# Quote pdf

## Creating a quote PDF

> Generates a pdf for a given quote and returns its contents. \
> \*\*\*\
> \
> \### Required scopes\
> \
> &#x20; \* \`quote.quote\_read\` - allows to generate a PDF for any quote\
> &#x20; \* \`quote.quote\_manage\` - allows to generate a PDF for any quote\
> &#x20; \* \`quote.quote\_manage\_own\` - allows to generate a PDF for own quote<br>

```json
{"openapi":"3.0.1","info":{"title":"Quote Service","version":"0.0.1"},"tags":[{"name":"Quote pdf"}],"servers":[{"url":"https://api.emporix.io"}],"security":[{"OAuth2":["quote.quote_manage","quote.quote_manage_own"]}],"components":{"securitySchemes":{"OAuth2":{"type":"oauth2","flows":{"clientCredentials":{"tokenUrl":"https://api.emporix.io/oauth/token","scopes":{"quote.quote_read":"","quote.quote_read_own":"","quote.quote_manage":"","quote.quote_manage_own":""}}}}},"parameters":{"trait_acceptLanguage_header":{"name":"Accept-Language","in":"header","required":false,"schema":{"type":"string"},"description":"List of language codes acceptable for the response. You can specify factors that indicate which language should be retrieved if the one with a higher factor was not found in the localized fields. If a value is specified, then it must be present in the tenant configuration.\n* If the header is set to a particular language or a list of languages, all localized fields are retrieved as strings.\n* If the header is set to `*`, all localized fields are retrieved as maps of translations, where the keys are language codes and values are the fields in their respective languages.\n* If the header is empty, localized fields are retrieved in the default language defined in the Configuration Service.\n"}},"responses":{"Bad_request_400":{"description":"Unsupported language provided.","content":{"application/json":{"schema":{"type":"object","properties":{"code":{"type":"integer"},"status":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"string"}}}}}}},"Unathorized_401":{"description":"Given request is unauthorized - the authorization token is invalid or has expired. It usually means that tenant from the token does not match tenant from path.","content":{"application/json":{"schema":{"type":"object","properties":{"fault":{"type":"object","properties":{"faultstring":{"type":"string"},"detail":{"type":"object","properties":{"errorcode":{"type":"string"}}}}}}}}}},"Not_Found_404":{"description":"Given resource cannot be found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"schemas":{"ErrorResponse":{"required":["code","message","status"],"type":"object","properties":{"resourceId":{"type":"string","nullable":true},"code":{"type":"integer","format":"int32"},"status":{"type":"string"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"string"}}}}}},"paths":{"/quote/{tenant}/quotes/{quoteId}/pdf":{"post":{"tags":["Quote pdf"],"summary":"Creating a quote PDF","description":"Generates a pdf for a given quote and returns its contents. \n***\n\n### Required scopes\n\n  * `quote.quote_read` - allows to generate a PDF for any quote\n  * `quote.quote_manage` - allows to generate a PDF for any quote\n  * `quote.quote_manage_own` - allows to generate a PDF for own quote\n","operationId":"POST-quote-generate-quote-pdf","parameters":[{"name":"tenant","in":"path","description":"Your Emporix tenant name.\n\n**Note**: The tenant name should always be written in lowercase.\n","required":true,"schema":{"type":"string"}},{"name":"quoteId","in":"path","description":"Quote unique identifier generated when the quote is created.\n","required":true,"schema":{"type":"string"}},{"$ref":"#/components/parameters/trait_acceptLanguage_header"}],"responses":{"200":{"description":"The request was successful. Generated pdf is returned.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"$ref":"#/components/responses/Bad_request_400"},"401":{"$ref":"#/components/responses/Unathorized_401"},"403":{"description":"Permission denied due to insufficient rights. This may happen when request does not contain sufficient scopes for given query values.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"$ref":"#/components/responses/Not_Found_404"}}}}}}
```
