There are 3 headless offerings out of the box in Sitecore 9+:

**1) The Sitecore Item API** -
This has been available for quite some time. However it isn't always seen as true Headless due to it not including presentation details or personalisation in the response.

https://doc.sitecore.net/sitecore_experience_platform/developing/developing_with_sitecore/sitecoreservicesclient/the_restful_api_for_the_itemservice

**2) JSS** -
This uses the Layout service (It has it's own individual JSON structure) to support Front-end Apps (e.g React, Angular, Vue) whilst maintaining full Sitecore Experience Editor and personaisation features (page-level content composition,  multi-variate testing etc). This is seen as a true Headless offering as it returns serialized presentation details as well as support for tracking and analytics. JSS requires a consumption based licence at time of writing.

https://jss.sitecore.net/

**3) SXA** -
SXA also uses the Layout Service (again with it's own individual JSON structure). This powers the SXA Components. SXA is available with a on-premise licence (at cost) as well as included in an consumption based licence (at time of writing).

https://doc.sitecore.net/sitecore_experience_accelerator/getting_started_with_sxa


At this point in time if you want true Headless support you must therefore have the JSS or SXA modules included in your Licence in order to have access to the Layout Service.

**Other Useful links:**

https://jss.sitecore.net/docs/fundamentals/services/layout-service

https://doc.sitecore.net/sitecore_experience_accelerator/data_modeling/json/use_sxa_layout_service_to_model_your_pages_in_json