{"openapi":"3.0.1","info":{"title":"Content Management API","description":"The Content Management API enables developers to import and update content in the form of individual documents, pages and resource bundles. \n\nAll operations are performed within the context of a developer project, and all writes are performed on the unpublished variant of a page or document associated with the project.\n","version":"Beta"},"externalDocs":{"description":"See official Bloomreach documentation","url":"https://documentation.bloomreach.com/content/reference/content-type-management-api"},"servers":[{"url":"https://developers.bloomreach.io/management/content/v1"}],"security":[{"bearerAuth":[]}],"tags":[{"name":"Content Document Operations","externalDocs":{"description":"See","url":""}},{"name":"Content Page Operations","externalDocs":{"description":"See","url":""}},{"name":"Content Resource Bundle Operations","externalDocs":{"description":"See","url":""}}],"paths":{"/project/{project_id}/channel/{channel_id}/page/{relative_page_path}":{"get":{"tags":["Content Page Operations"],"summary":"Get a page in a specific project","description":"Get a page in a specific project. \n\nA page in core may be have changes that aren't yet published, these are stored in a separate variant of the page (the 'unpublished' variant). When requesting a page for core, the 'published' variant is retrieved, unless there is none (the page has never been published yet), in which case the unpublished variant is fetched.","operationId":"getPage_1","parameters":[{"name":"project_id","in":"path","description":"specifies the project content is fetched from","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"channel_id","in":"path","description":"specifies the channel this page is associated with","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"brxsaas"},{"name":"relative_page_path","in":"path","description":"Relative path of page. It is appended to the content root path of the given channel","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"pages/mypage"}],"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page"},"examples":{"A page":{"description":"In this example, a Page is created","value":{"name":"example","displayName":"Example","locale":"en_US","layout":"two-column","document":{"contentType":"content","fields":[{"name":"title","value":["Example title"]},{"name":"content","value":["<p>Some html content</p>"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"introduction","value":["Example introduction"]},{"name":"date","value":["2021-10-06T22:00:00Z"]}]},"containers":[{"path":"top","components":[{"componentDefinition":"sample/single-banner-carousel","updateContentOnPageSync":false,"componentConfigurations":[{"id":"DEFAULT","content":null,"parameters":[{"name":"alignment","value":"center"},{"name":"document1","value":"banners/safe-workspace-1"},{"name":"document2","value":"banners/safe-workspace-2"},{"name":"interval","value":"10000"}]}]}]},{"path":"main","components":[{"componentDefinition":"sample/titleandtext","updateContentOnPageSync":true,"componentConfigurations":[{"id":"DEFAULT","content":{"contentType":"titleandtext","fields":[{"name":"title","value":["Welcome to brX Content"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]}]},"parameters":[{"name":"titlesize","value":"H3"},{"name":"textalignment","value":"left"},{"name":"style","value":"style1"}]}]}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"},"404":{"description":"Not Found"}}},"put":{"tags":["Content Page Operations"],"summary":"Create or update a page in a specific project and channel","description":"Create or update a page in a specific project and channel","operationId":"putPage_1","parameters":[{"name":"X-Resource-Version","in":"header","description":"Resource's version, as obtained when GETting the resource. The first time a resource is created, a empty value is expected (omit the header). Must be used in any subsequent update requests of this resource","required":false,"style":"simple","explode":false,"schema":{"type":"string"},"example":"433cc90445d29c2356e385b9efe548b19ed86739f27eb7958a81847b9d8517c2"},{"name":"project_id","in":"path","description":"specifies the project content is added to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"channel_id","in":"path","description":"specifies the channel this page is associated with","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"brxsaas"},{"name":"relative_page_path","in":"path","description":"Relative path of page. It is appended to the content root path of the given channel. Folders appearing in this path need to preexist","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"pages/mypage"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page"},"examples":{"A page":{"description":"In this example, a Page is created","value":{"name":"example","displayName":"Example","locale":"en_US","layout":"two-column","document":{"contentType":"content","fields":[{"name":"title","value":["Example title"]},{"name":"content","value":["<p>Some html content</p>"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"introduction","value":["Example introduction"]},{"name":"date","value":["2021-10-06T22:00:00Z"]}]},"containers":[{"path":"top","components":[{"componentDefinition":"sample/single-banner-carousel","updateContentOnPageSync":false,"componentConfigurations":[{"id":"DEFAULT","content":null,"parameters":[{"name":"alignment","value":"center"},{"name":"document1","value":"banners/safe-workspace-1"},{"name":"document2","value":"banners/safe-workspace-2"},{"name":"interval","value":"10000"}]}]}]},{"path":"main","components":[{"componentDefinition":"sample/titleandtext","updateContentOnPageSync":true,"componentConfigurations":[{"id":"DEFAULT","content":{"contentType":"titleandtext","fields":[{"name":"title","value":["Welcome to brX Content"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]}]},"parameters":[{"name":"titlesize","value":"H3"},{"name":"textalignment","value":"left"},{"name":"style","value":"style1"}]}]}]}]}}}}}},"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page"},"examples":{"A page":{"description":"In this example, a Page is created","value":{"name":"example","displayName":"Example","locale":"en_US","layout":"two-column","document":{"contentType":"content","fields":[{"name":"title","value":["Example title"]},{"name":"content","value":["<p>Some html content</p>"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"introduction","value":["Example introduction"]},{"name":"date","value":["2021-10-06T22:00:00Z"]}]},"containers":[{"path":"top","components":[{"componentDefinition":"sample/single-banner-carousel","updateContentOnPageSync":false,"componentConfigurations":[{"id":"DEFAULT","content":null,"parameters":[{"name":"alignment","value":"center"},{"name":"document1","value":"banners/safe-workspace-1"},{"name":"document2","value":"banners/safe-workspace-2"},{"name":"interval","value":"10000"}]}]}]},{"path":"main","components":[{"componentDefinition":"sample/titleandtext","updateContentOnPageSync":true,"componentConfigurations":[{"id":"DEFAULT","content":{"contentType":"titleandtext","fields":[{"name":"title","value":["Welcome to brX Content"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]}]},"parameters":[{"name":"titlesize","value":"H3"},{"name":"textalignment","value":"left"},{"name":"style","value":"style1"}]}]}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"201":{"description":"Created","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Page"},"examples":{"A page":{"description":"In this example, a Page is created","value":{"name":"example","displayName":"Example","locale":"en_US","layout":"two-column","document":{"contentType":"content","fields":[{"name":"title","value":["Example title"]},{"name":"content","value":["<p>Some html content</p>"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"introduction","value":["Example introduction"]},{"name":"date","value":["2021-10-06T22:00:00Z"]}]},"containers":[{"path":"top","components":[{"componentDefinition":"sample/single-banner-carousel","updateContentOnPageSync":false,"componentConfigurations":[{"id":"DEFAULT","content":null,"parameters":[{"name":"alignment","value":"center"},{"name":"document1","value":"banners/safe-workspace-1"},{"name":"document2","value":"banners/safe-workspace-2"},{"name":"interval","value":"10000"}]}]}]},{"path":"main","components":[{"componentDefinition":"sample/titleandtext","updateContentOnPageSync":true,"componentConfigurations":[{"id":"DEFAULT","content":{"contentType":"titleandtext","fields":[{"name":"title","value":["Welcome to brX Content"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]}]},"parameters":[{"name":"titlesize","value":"H3"},{"name":"textalignment","value":"left"},{"name":"style","value":"style1"}]}]}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"}}},"delete":{"tags":["Content Page Operations"],"summary":"Dissociate an experience page from a project","description":"Dissociate an experience page from a project.\n\nThe project has to be in unaccepted state.","operationId":"deletePage_1","parameters":[{"name":"project_id","in":"path","description":"specifies the project that the page is dissociated to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"channel_id","in":"path","description":"specifies the channel this page is dissociated to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"brxsaas"},{"name":"relative_page_path","in":"path","description":"Relative path of page. It is appended to the content root path of the given channel","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"pages/mypage"}],"responses":{"200":{"description":"OK. The page was dissociated from the project."},"204":{"description":"No Content. The page was not associated to that project."},"403":{"description":"Forbidden"},"409":{"description":"Conflict. The current status of either the page or the project does not allow to perform the operation."}}}},"/project/{project_id}/document/{document_path}":{"get":{"tags":["Content Document Operations"],"summary":"Get a document in a specific project","description":"Get a document from a specific project. Documents with state unpublished will be retrieved.\n\nOnly documents that have been previously added to a project will show on the response. Check how to [make changes to channels and content in a Project](https://documentation.bloomreach.com/content/docs/make-changes-to-channels-and-content-in-a-project).\n\nA document in core may be have changes that aren't yet published, these are stored in a separate variant of the document (the 'unpublished' variant). When requesting a document for core, the 'published' variant is retrieved, unless there is none (the page has never been published yet), in which case the unpublished variant is fetched.","operationId":"getDocument_1","parameters":[{"name":"project_id","in":"path","description":"specifies the project content is fetched from","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"document_path","in":"path","description":"Path of a document. This is the absolute path to the document, including the document name","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"content/documents/brxsaas/banners/banner1"}],"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Document"},"examples":{"A document with common fields":{"description":"In this example, fields of the following types are used:\n* String (in this example used for String, Text, Html, RichText, Date, and Link fields\n* Boolean (in this example used for simple boolean fields)\n* Integer\n* Number\n","value":{"name":"brand-1","displayName":"Brand 1","locale":"en_US","contentType":"banner","fields":[{"name":"title","value":["Brand 1"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]},{"name":"multipleHtmlField","value":["<p>Welcome to the Bloomreach Sample Front-end Application for the brX Content</p>","<p>More html text</p>"]},{"name":"aRichtextField","value":["<p>Example rich text field with links: <a data-link=\"/content/documents/brxsaas/banners/banner-1\">internal link</a>, <a href=\"http://www.bloomreach.com\">external link</a>, <a data-link=\"/content/gallery/brxsaas/banners/test-image.jpg\">link to image</a>, <a data-link=\"/content/assets/brxsaas/test-asset.pdf\">link to asset</a>, embedded image: <img src=\"test-image2.jpg/{_document}/hippogallery:original\" /></p>"]},{"name":"dateField","value":["2021-10-06T22:00:00Z"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"link","value":["/content/documents/brxsaas/pages/products/all"]},{"name":"multipleBooleanField","value":[true,false]},{"name":"integerField","value":[24]},{"name":"multipleNumberField","value":[24.1,5.6]}],"path":"/content/documents/brxsaas/banners/brand-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with embedded resource fields":{"description":"In this example, fields of the following types are used:\n* EmbeddedResource\n","value":{"name":"example-1","displayName":"Example 1","locale":"en_US","contentType":"exampletype","fields":[{"name":"anEmbeddedResourceField","value":[{"filename":"hippo:resource","binarydata":"/9j/4AAQSkZJRgABAQAAFAAUAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAAUAAAAAQAAABQAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAigAwAEAAAAAQAAAAUAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAUACAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/3QAEAAH/2gAMAwEAAhEDEQA/APrD4kfAXwl46KapdRwm7uHw0l9b/bDHkjPlFmDRjAxtB289OueI/wCGPPB3/P3p3/gmT/45X0Hdf8eVr/11FNrCtlmGrTc5J38pSX4JpG1PGVYxS0frGLf3tNn/2Q==","mimeType":"application/json"}]}],"path":"/content/documents/brxsaas/content/example-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with fieldgroups":{"description":"In this example, the following fields are used:\n* Fieldgroup\n* Selectable Fieldgroup\n","value":{"name":"aDocumentWithFieldGroups","displayName":"a document with FieldGroups","locale":"en_US","contentType":"aTypeWithFieldGroups","path":"/content/documents/brxsaas/content/aDocumentWithFieldGroups","fields":[{"name":"aFieldGroupField","value":[{"fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}}]},{"name":"aFieldGroupWithFieldGroupField","value":[{"fields":{"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}],"title":["Top level title"]}}]},{"name":"aSelectableFieldGroupField","value":[{"fieldGroupType":"aFieldGroupType","fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}},{"fieldGroupType":"aFieldGroupWithFieldGroupType","fields":{"title":["Top level title"],"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}]}}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"},"404":{"description":"Not Found"}}},"put":{"tags":["Content Document Operations"],"summary":"Create or update a document in a specific project","description":"Create or update a document in a specific project. \n\nThe document will be created with state unpublished. To make changes available on the live website, it's necessary to [merge the project](https://documentation.bloomreach.com/content/docs/merge-a-project-into-the-core). ","operationId":"putDocument_1","parameters":[{"name":"X-Resource-Version","in":"header","description":"Resource's version, as obtained when GETting the resource. The first time a resource is created, a empty value is expected (omit the header). Must be used in any subsequent update requests of this resource","required":false,"style":"simple","explode":false,"schema":{"type":"string"},"example":"433cc90445d29c2356e385b9efe548b19ed86739f27eb7958a81847b9d8517c2"},{"name":"project_id","in":"path","description":"specifies the project content is added to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"document_path","in":"path","description":"Path of a document. This is the absolute path to the document, including the document name. Folders appearing in this path need to preexist","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"content/documents/brxsaas/banners/banner1"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Document"},"examples":{"A document with common fields":{"description":"In this example, fields of the following types are used:\n* String (in this example used for String, Text, Html, RichText, Date, and Link fields\n* Boolean (in this example used for simple boolean fields)\n* Integer\n* Number\n","value":{"name":"brand-1","displayName":"Brand 1","locale":"en_US","contentType":"banner","fields":[{"name":"title","value":["Brand 1"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]},{"name":"multipleHtmlField","value":["<p>Welcome to the Bloomreach Sample Front-end Application for the brX Content</p>","<p>More html text</p>"]},{"name":"aRichtextField","value":["<p>Example rich text field with links: <a data-link=\"/content/documents/brxsaas/banners/banner-1\">internal link</a>, <a href=\"http://www.bloomreach.com\">external link</a>, <a data-link=\"/content/gallery/brxsaas/banners/test-image.jpg\">link to image</a>, <a data-link=\"/content/assets/brxsaas/test-asset.pdf\">link to asset</a>, embedded image: <img src=\"test-image2.jpg/{_document}/hippogallery:original\" /></p>"]},{"name":"dateField","value":["2021-10-06T22:00:00Z"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"link","value":["/content/documents/brxsaas/pages/products/all"]},{"name":"multipleBooleanField","value":[true,false]},{"name":"integerField","value":[24]},{"name":"multipleNumberField","value":[24.1,5.6]}],"path":"/content/documents/brxsaas/banners/brand-1"}},"A document with embedded resource fields":{"description":"In this example, fields of the following types are used:\n* EmbeddedResource\n","value":{"name":"example-1","displayName":"Example 1","locale":"en_US","contentType":"exampletype","fields":[{"name":"anEmbeddedResourceField","value":[{"filename":"hippo:resource","binarydata":"/9j/4AAQSkZJRgABAQAAFAAUAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAAUAAAAAQAAABQAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAigAwAEAAAAAQAAAAUAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAUACAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/3QAEAAH/2gAMAwEAAhEDEQA/APrD4kfAXwl46KapdRwm7uHw0l9b/bDHkjPlFmDRjAxtB289OueI/wCGPPB3/P3p3/gmT/45X0Hdf8eVr/11FNrCtlmGrTc5J38pSX4JpG1PGVYxS0frGLf3tNn/2Q==","mimeType":"application/json"}]}],"path":"/content/documents/brxsaas/content/example-1"}},"A document with fieldgroups":{"description":"In this example, the following fields are used:\n* Fieldgroup\n* Selectable Fieldgroup\n","value":{"name":"aDocumentWithFieldGroups","displayName":"a document with FieldGroups","locale":"en_US","contentType":"aTypeWithFieldGroups","path":"/content/documents/brxsaas/content/aDocumentWithFieldGroups","fields":[{"name":"aFieldGroupField","value":[{"fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}}]},{"name":"aFieldGroupWithFieldGroupField","value":[{"fields":{"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}],"title":["Top level title"]}}]},{"name":"aSelectableFieldGroupField","value":[{"fieldGroupType":"aFieldGroupType","fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}},{"fieldGroupType":"aFieldGroupWithFieldGroupType","fields":{"title":["Top level title"],"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}]}}]}]}}}}}},"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Document"},"examples":{"A document with common fields":{"description":"In this example, fields of the following types are used:\n* String (in this example used for String, Text, Html, RichText, Date, and Link fields\n* Boolean (in this example used for simple boolean fields)\n* Integer\n* Number\n","value":{"name":"brand-1","displayName":"Brand 1","locale":"en_US","contentType":"banner","fields":[{"name":"title","value":["Brand 1"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]},{"name":"multipleHtmlField","value":["<p>Welcome to the Bloomreach Sample Front-end Application for the brX Content</p>","<p>More html text</p>"]},{"name":"aRichtextField","value":["<p>Example rich text field with links: <a data-link=\"/content/documents/brxsaas/banners/banner-1\">internal link</a>, <a href=\"http://www.bloomreach.com\">external link</a>, <a data-link=\"/content/gallery/brxsaas/banners/test-image.jpg\">link to image</a>, <a data-link=\"/content/assets/brxsaas/test-asset.pdf\">link to asset</a>, embedded image: <img src=\"test-image2.jpg/{_document}/hippogallery:original\" /></p>"]},{"name":"dateField","value":["2021-10-06T22:00:00Z"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"link","value":["/content/documents/brxsaas/pages/products/all"]},{"name":"multipleBooleanField","value":[true,false]},{"name":"integerField","value":[24]},{"name":"multipleNumberField","value":[24.1,5.6]}],"path":"/content/documents/brxsaas/banners/brand-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with embedded resource fields":{"description":"In this example, fields of the following types are used:\n* EmbeddedResource\n","value":{"name":"example-1","displayName":"Example 1","locale":"en_US","contentType":"exampletype","fields":[{"name":"anEmbeddedResourceField","value":[{"filename":"hippo:resource","binarydata":"/9j/4AAQSkZJRgABAQAAFAAUAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAAUAAAAAQAAABQAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAigAwAEAAAAAQAAAAUAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAUACAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/3QAEAAH/2gAMAwEAAhEDEQA/APrD4kfAXwl46KapdRwm7uHw0l9b/bDHkjPlFmDRjAxtB289OueI/wCGPPB3/P3p3/gmT/45X0Hdf8eVr/11FNrCtlmGrTc5J38pSX4JpG1PGVYxS0frGLf3tNn/2Q==","mimeType":"application/json"}]}],"path":"/content/documents/brxsaas/content/example-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with fieldgroups":{"description":"In this example, the following fields are used:\n* Fieldgroup\n* Selectable Fieldgroup\n","value":{"name":"aDocumentWithFieldGroups","displayName":"a document with FieldGroups","locale":"en_US","contentType":"aTypeWithFieldGroups","path":"/content/documents/brxsaas/content/aDocumentWithFieldGroups","fields":[{"name":"aFieldGroupField","value":[{"fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}}]},{"name":"aFieldGroupWithFieldGroupField","value":[{"fields":{"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}],"title":["Top level title"]}}]},{"name":"aSelectableFieldGroupField","value":[{"fieldGroupType":"aFieldGroupType","fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}},{"fieldGroupType":"aFieldGroupWithFieldGroupType","fields":{"title":["Top level title"],"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}]}}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"201":{"description":"Created","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Document"},"examples":{"A document with common fields":{"description":"In this example, fields of the following types are used:\n* String (in this example used for String, Text, Html, RichText, Date, and Link fields\n* Boolean (in this example used for simple boolean fields)\n* Integer\n* Number\n","value":{"name":"brand-1","displayName":"Brand 1","locale":"en_US","contentType":"banner","fields":[{"name":"title","value":["Brand 1"]},{"name":"text","value":["Welcome to the Bloomreach Sample Front-end Application for the brX Content. This front-end application includes a range of implementations for starting your own website, including Bloomreach Search and Merchandising functionality, GraphQL, and other integrations across the brX Content. We invite you to look around and start building your own version of this app by cloning it and playing around."]},{"name":"multipleHtmlField","value":["<p>Welcome to the Bloomreach Sample Front-end Application for the brX Content</p>","<p>More html text</p>"]},{"name":"aRichtextField","value":["<p>Example rich text field with links: <a data-link=\"/content/documents/brxsaas/banners/banner-1\">internal link</a>, <a href=\"http://www.bloomreach.com\">external link</a>, <a data-link=\"/content/gallery/brxsaas/banners/test-image.jpg\">link to image</a>, <a data-link=\"/content/assets/brxsaas/test-asset.pdf\">link to asset</a>, embedded image: <img src=\"test-image2.jpg/{_document}/hippogallery:original\" /></p>"]},{"name":"dateField","value":["2021-10-06T22:00:00Z"]},{"name":"image","value":["/content/gallery/brxsaas/banners/brand-1.jpg"]},{"name":"link","value":["/content/documents/brxsaas/pages/products/all"]},{"name":"multipleBooleanField","value":[true,false]},{"name":"integerField","value":[24]},{"name":"multipleNumberField","value":[24.1,5.6]}],"path":"/content/documents/brxsaas/banners/brand-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with embedded resource fields":{"description":"In this example, fields of the following types are used:\n* EmbeddedResource\n","value":{"name":"example-1","displayName":"Example 1","locale":"en_US","contentType":"exampletype","fields":[{"name":"anEmbeddedResourceField","value":[{"filename":"hippo:resource","binarydata":"/9j/4AAQSkZJRgABAQAAFAAUAAD/4QCMRXhpZgAATU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAAAUAAAAAQAAABQAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAAigAwAEAAAAAQAAAAUAAAAA/+0AOFBob3Rvc2hvcCAzLjAAOEJJTQQEAAAAAAAAOEJJTQQlAAAAAAAQ1B2M2Y8AsgTpgAmY7PhCfv/AABEIAAUACAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2wBDAAMCAgICAgMCAgIDAwMDBAYEBAQEBAgGBgUGCQgKCgkICQkKDA8MCgsOCwkJDRENDg8QEBEQCgwSExIQEw8QEBD/2wBDAQMDAwQDBAgEBAgQCwkLEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBD/3QAEAAH/2gAMAwEAAhEDEQA/APrD4kfAXwl46KapdRwm7uHw0l9b/bDHkjPlFmDRjAxtB289OueI/wCGPPB3/P3p3/gmT/45X0Hdf8eVr/11FNrCtlmGrTc5J38pSX4JpG1PGVYxS0frGLf3tNn/2Q==","mimeType":"application/json"}]}],"path":"/content/documents/brxsaas/content/example-1","system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}},"A document with fieldgroups":{"description":"In this example, the following fields are used:\n* Fieldgroup\n* Selectable Fieldgroup\n","value":{"name":"aDocumentWithFieldGroups","displayName":"a document with FieldGroups","locale":"en_US","contentType":"aTypeWithFieldGroups","path":"/content/documents/brxsaas/content/aDocumentWithFieldGroups","fields":[{"name":"aFieldGroupField","value":[{"fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}}]},{"name":"aFieldGroupWithFieldGroupField","value":[{"fields":{"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}],"title":["Top level title"]}}]},{"name":"aSelectableFieldGroupField","value":[{"fieldGroupType":"aFieldGroupType","fields":{"title":["A default title"],"calendardate":["2021-10-06T22:00:00Z"]}},{"fieldGroupType":"aFieldGroupWithFieldGroupType","fields":{"title":["Top level title"],"aFieldGroupField":[{"fields":{"title":["A different default title"],"calendardate":["2022-02-08T23:00:00Z"]}}]}}]}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"}}},"delete":{"tags":["Content Document Operations"],"summary":"Dissociate a document from a project","description":"Dissociate a document from a project.\n\nThe project has to be in unaccepted state.","operationId":"deleteDocument_1","parameters":[{"name":"project_id","in":"path","description":"specifies the project the document is dissocated from","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"document_path","in":"path","description":"Path of a document. This is the absolute path to the document, including the document name.","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"content/documents/brxsaas/banners/banner1"}],"responses":{"200":{"description":"OK. The document was dissociated from the project."},"204":{"description":"No Content. The document was not associated to that project."},"403":{"description":"Forbidden"},"409":{"description":"Conflict. The current status of either the document or the project does not allow to perform the operation."}}}},"/project/{project_id}/resourcebundles/{resource_bundle_path}":{"get":{"tags":["Content Resource Bundle Operations"],"summary":"Get a resource bundle in a specific project","description":"Get a resource bundle in a specific project.\n\nResource bundles are also documents which are collections of key message pairs. The locale specific messages can be defined in a single structure. The projects are supported on resource bundles. \n\nResource bundles are mostly defined with the locale based value sets. The value sets are not restricted to use with locales only though. Any other grouping can also be defined with a resource bundle document. The design also supports custom value sets apart from locales.\n\nA Resource bundle in core may be have changes that aren't yet published, these are stored in a separate variant of the bundle (the 'unpublished' variant). When requesting a bundle for core, the 'published' variant is retrieved, unless there is none (the bundle has never been published yet), in which case the unpublished variant is fetched.\n","operationId":"getResourceBundle","parameters":[{"name":"project_id","in":"path","description":"specifies the project content is fetched from","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"resource_bundle_path","in":"path","description":"Path of a resource bundle. This is the absolute path to the resource bundle, including the resource bundle name","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"/content/documents/administration/search-bar-categories"}],"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceBundle"},"examples":{"A resource bundle":{"description":"In this example, a resource bundle is created","value":{"name":"search-bar-categories","displayName":"Search Bar Categories","path":"/content/documents/administration/search-bar-categories","id":"search.bar.categories","keys":[{"name":"all","description":"all category"},{"name":"books","description":"books category"},{"name":"music","description":"music category"}],"valueSets":[{"messages":[{"key":"all","value":"All"},{"key":"books","value":"Books"},{"key":"music","value":"Music"}],"name":"DEFAULT"},{"messages":[{"key":"all","value":"Alle"},{"key":"books","value":"Boeken"},{"key":"music","value":"Muziek"}],"name":"nl"}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"},"404":{"description":"Not Found"}}},"put":{"tags":["Content Resource Bundle Operations"],"summary":"Create or update a resource bundle in a specific project","description":"Create or update a resource bundle in a specific project","operationId":"putResourceBundle","parameters":[{"name":"X-Resource-Version","in":"header","description":"Resource's version, as obtained when GETting the resource. The first time a resource is created, a empty value is expected (omit the header). Must be used in any subsequent update requests of this resource","required":false,"style":"simple","explode":false,"schema":{"type":"string"},"example":"433cc90445d29c2356e385b9efe548b19ed86739f27eb7958a81847b9d8517c2"},{"name":"project_id","in":"path","description":"specifies the project content is added to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"resource_bundle_path","in":"path","description":"Path of a resource bundle. This is the absolute path to the resource bundle, including the resource bundle name","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"/content/documents/administration/search-bar-categories"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceBundle"},"examples":{"A resource bundle":{"description":"In this example, a resource bundle is created","value":{"name":"search-bar-categories","displayName":"Search Bar Categories","path":"/content/documents/administration/search-bar-categories","id":"search.bar.categories","keys":[{"name":"all","description":"all category"},{"name":"books","description":"books category"},{"name":"music","description":"music category"}],"valueSets":[{"messages":[{"key":"all","value":"All"},{"key":"books","value":"Books"},{"key":"music","value":"Music"}],"name":"DEFAULT"},{"messages":[{"key":"all","value":"Alle"},{"key":"books","value":"Boeken"},{"key":"music","value":"Muziek"}],"name":"nl"}]}}}}}},"responses":{"200":{"description":"OK","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceBundle"},"examples":{"A resource bundle":{"description":"In this example, a resource bundle is created","value":{"name":"search-bar-categories","displayName":"Search Bar Categories","path":"/content/documents/administration/search-bar-categories","id":"search.bar.categories","keys":[{"name":"all","description":"all category"},{"name":"books","description":"books category"},{"name":"music","description":"music category"}],"valueSets":[{"messages":[{"key":"all","value":"All"},{"key":"books","value":"Books"},{"key":"music","value":"Music"}],"name":"DEFAULT"},{"messages":[{"key":"all","value":"Alle"},{"key":"books","value":"Boeken"},{"key":"music","value":"Muziek"}],"name":"nl"}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"201":{"description":"Created","headers":{"X-Resource-Version":{"description":"Resource's version. Must be used in any subsequent update requests of this resource","style":"simple","explode":false,"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceBundle"},"examples":{"A resource bundle":{"description":"In this example, a resource bundle is created","value":{"name":"search-bar-categories","displayName":"Search Bar Categories","path":"/content/documents/administration/search-bar-categories","id":"search.bar.categories","keys":[{"name":"all","description":"all category"},{"name":"books","description":"books category"},{"name":"music","description":"music category"}],"valueSets":[{"messages":[{"key":"all","value":"All"},{"key":"books","value":"Books"},{"key":"music","value":"Music"}],"name":"DEFAULT"},{"messages":[{"key":"all","value":"Alle"},{"key":"books","value":"Boeken"},{"key":"music","value":"Muziek"}],"name":"nl"}],"system":{"createdBy":"admin","createdAt":"2021-10-01T15:16:14.146+02:00","updatedBy":"admin","updatedAt":"2021-10-01T15:16:14.22+02:00"}}}}}}},"403":{"description":"Forbidden"}}},"delete":{"tags":["Content Resource Bundle Operations"],"summary":"Dissociate a resource bundle document from a project","description":"Dissociate a resource bundle document from a project.\n\nThe project has to be in unaccepted state.","operationId":"deleteResourceBundle","parameters":[{"name":"project_id","in":"path","description":"specifies the project where the resource bundle is dissociated to","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"vIUy9"},{"name":"resource_bundle_path","in":"path","description":"Path of a resource bundle. This is the absolute path to the resource bundle, including the resource bundle name","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"/content/documents/administration/search-bar-categories"}],"responses":{"200":{"description":"OK. The resource bundle document was dissociated from the project."},"204":{"description":"No Content. The resource bundle document was not associated to that project."},"403":{"description":"Forbidden"},"409":{"description":"Conflict. The current status of either the resource bundle document or the project does not allow to perform the operation."}}}},"/translation/{content_path}":{"get":{"tags":["Content Translation Operations"],"summary":"Get translations of the content","description":"Get the translations of a document, page, or folder in a channel. Translations of the content item are looked up in the other channels of the same translation channel group.\n\nWhen requesting a folder, translations of the 1st level children (documents, pagers, folders) of the folder can be requested via parameter.\n\nWhen requesting content, translation suggestions for the content can be requested via parameter. The suggestions are based on the relative path of the content. The relative content path is looked up in the other channels of the same channel group. If any content items in the other channels match the given relative path, then they are proposed as translation suggestions.","operationId":"getTranslations","parameters":[{"name":"content_path","in":"path","description":"Path of the content. This is the absolute path to the content, including the content name","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"content/documents/brxsaas/banners/banner1"},{"name":"includeDocuments","in":"query","description":"whether to include the translations of the 1st level children (documents, pagers, folders) of the folder in case the content is a folder","required":false,"style":"form","explode":true,"schema":{"type":"boolean","default":false}},{"name":"status","in":"query","description":"to filter the translations by their status. options are 'linked' (show only existing translations), 'suggested' (show only translation suggestions), 'all' (show both existing translations and translation suggestions)","required":false,"style":"form","explode":true,"schema":{"type":"string","enum":["linked","suggested","all"],"default":"linked"}},{"name":"view","in":"query","description":"whether the response payload should have a detailed view of the translations. options are 'detailed' (show extra information such as the type, locale and status of the content), 'simple' (works only when status is selected as 'suggested', shows the list of translations suggestions only with their paths that can be copy/pasted to link service as a request)","required":false,"style":"form","explode":true,"schema":{"type":"string","enum":["detailed","simple"],"default":"detailed"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"oneOf":[{"$ref":"#/components/schemas/DetailedTranslationSource"},{"type":"array","items":{"$ref":"#/components/schemas/DetailedTranslationSource"}},{"type":"array","items":{"$ref":"#/components/schemas/SimpleTranslationSource"}}]},"examples":{"Detailed view of translations of a document with existing translations and translation suggestions":{"$ref":"#/components/examples/DetailedDocumentTranslationExample"},"Detailed view of translations of a page with existing translations and translation suggestions":{"$ref":"#/components/examples/DetailedPageTranslationExample"},"Detailed view of translations of a folder with existing translations and translation suggestions":{"$ref":"#/components/examples/DetailedFolderTranslationExample"},"Detailed view of translations of the 1st level children of a folder with existing translations and translation suggestions":{"$ref":"#/components/examples/DetailedFolderChildrenTranslationExample"},"Simple view of translation suggestions of content":{"$ref":"#/components/examples/SimpleContentTranslationExample"},"Simple view of translation suggestions of content the 1st level children of a folder":{"$ref":"#/components/examples/SimpleContentListTranslationExample"}}}}},"400":{"description":"Bad Request"},"403":{"description":"Forbidden"}}}},"/translation/link":{"post":{"tags":["Content Translation Operations"],"summary":"Link the source and target content as translations of each other","description":"Links the given source and target content as translations of each other.\nThis operations runs asynchronously. For the given source and target content:\n* Source and target content must be in the same translation group\n* Source and target content paths must be under the folder '/content/documents'\n* Source and target content must have the same content type\n* The layout and the components of the source content must exist in target content's channel (for pages)\n* Source and target content must not have any existing translations in each other's channel (content can have maximum 1 translation in a channel)\n\nThe operation will fail if the source or target content already has a translation in each other's channel. The existing translations can be overridden via parameter.","operationId":"linkContent","parameters":[{"name":"overrideExistingTranslations","in":"query","description":"whether the existing translation in the channel should be overridden in case the content already has a translation in the target channel","required":false,"style":"form","explode":true,"schema":{"type":"boolean","default":false}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LinkContent"},"examples":{"A translation source and target content":{"$ref":"#/components/examples/SimpleContentListTranslationExample"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationJob"},"examples":{"A job response":{"$ref":"#/components/examples/NewTranslationJobExample"}}}}}}}},"/translation/unlink":{"post":{"tags":["Content Translation Operations"],"summary":"Unlink the content from any existing translations","description":"Unlinks the given content from any existing translations.\nThis operations runs asynchronously. For the given content:\n* Content must be part of a translation group\n* Content must be under the folder '/content/documents'","operationId":"unlinkContent","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnlinkContent"},"examples":{"A translation source and target content":{"$ref":"#/components/examples/UnlinkContentExample"}}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationJob"},"examples":{"A job response":{"$ref":"#/components/examples/NewTranslationJobExample"}}}}}}}},"/translation/operations/{operation_id}":{"get":{"tags":["Content Translation Operations"],"summary":"Get the status of a link/unlink operation","description":"Get the status of a link/unlink operation which shows information such as operation result, number of processed content items, number of failed operations, start time, end time, and error logs.","operationId":"getOperationStatus","parameters":[{"name":"operation_id","in":"path","description":"Unique id generated after link/unlink operation","required":true,"style":"simple","explode":false,"schema":{"type":"string"},"example":"b7e8c433-ee81-4aef-b904-83c4d12a4bd3"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationJob"},"examples":{"A successful job response":{"$ref":"#/components/examples/SuccessfulTranslationJobExample"},"A failed job response":{"$ref":"#/components/examples/FailedTranslationJobExample"}}}}}}}}},"components":{"schemas":{"Document":{"required":["contentType","displayName","fields","name","path"],"type":"object","properties":{"contentType":{"type":"string","description":"the content type of the document (eg banner, newsArticle). The value for the contentType may optionally include the namespace prefix; this is only required in case the type is in a namespace other than 'brxsaas', eg mynamespace:content"},"fields":{"type":"array","description":"fields of this document. A document field represents an attribute of the document, as specified in the document's content type. See [Content type fields](https://documentation.bloomreach.com/content/reference/content-type-fields) and [General concepts](https://documentation.bloomreach.com/content/docs/content-model-concepts)","items":{"$ref":"#/components/schemas/DocumentField"}},"name":{"pattern":"^[a-z0-9-._]*","type":"string","description":"identifying name of this document. Only valid characters are lowercase alphanumeric, dash, dot, and underscore. This value appears in URLs. The value must alsomatch the document name(last part of the path) in the document path."},"displayName":{"type":"string","description":"name of this document. Used in labels in the CMS UI and in Delivery API. The displayName can only be set if either is true:a. the document is new, b. the document only exists in the project specified in this operation"},"locale":{"type":"string","description":"document locale"},"path":{"type":"string","description":"absolute path of this document in the content repository"},"system":{"$ref":"#/components/schemas/System"}},"description":"A document is a content item in the Content repository. See [Content types](https://documentation.bloomreach.com/content/reference/content-type-fields) and [General concepts](https://documentation.bloomreach.com/content/docs/content-model-concepts)"},"DocumentField":{"required":["name","value"],"type":"object","properties":{"name":{"pattern":"^[A-Za-z0-9_]*","type":"string","description":"identifying name of this field. Value needs to correspond to the name of a field definition in the document's content type"},"value":{"type":"array","description":"value of a field. As fields can be multiple, this attribute is an array of values","items":{"$ref":"#/components/schemas/FieldValue"}}},"description":"A document field represents an attribute of the document, as specified in the document's content type. See [Content type fields](https://documentation.bloomreach.com/content/reference/content-type-fields) and [General concepts](https://documentation.bloomreach.com/content/docs/content-model-concepts)"},"EmbeddedResourceFieldValue":{"required":["binarydata","filename","mimeType"],"type":"object","properties":{"filename":{"type":"string","description":"the name of the file that is used as default value"},"binarydata":{"type":"string","description":"the binary data of the file that is used as default value. This data has to be encoded using base64"},"mimeType":{"type":"string","description":"the mimeType of the file to be uploaded"}},"description":"See [EmbeddedResource](https://documentation.bloomreach.com/content/reference/content-type-fields#embeddedresource)"},"FieldGroupFieldValue":{"required":["fields"],"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"type":"array","description":"fields from FieldGroup or SelectableFieldGroup","items":{"$ref":"#/components/schemas/FieldValue"}},"description":"fields from FieldGroup or SelectableFieldGroup"}},"description":"See [FieldGroup](https://documentation.bloomreach.com/content/reference/content-type-fields#fieldgroup)"},"FieldValue":{"type":"object","description":"Value of a field","oneOf":[{"type":"string"},{"type":"boolean"},{"type":"integer","format":"int64"},{"type":"number","format":"double"},{"$ref":"#/components/schemas/EmbeddedResourceFieldValue"},{"$ref":"#/components/schemas/FieldGroupFieldValue"},{"$ref":"#/components/schemas/SelectableFieldGroupFieldValue"}]},"SelectableFieldGroupFieldValue":{"required":["fieldGroupType","fields"],"type":"object","properties":{"fields":{"type":"object","additionalProperties":{"type":"array","description":"fields from FieldGroup or SelectableFieldGroup","items":{"$ref":"#/components/schemas/FieldValue"}},"description":"fields from FieldGroup or SelectableFieldGroup"},"fieldGroupType":{"type":"string","description":"the name of the fieldgroup type this default value is provided for. Unless the field group type belongs to the default group ('brxsaas'), the name must be prefixed with the group name and the colon character, e.g. 'mygroup:myfieldgrouptype'"}},"description":"See [Selectable FieldGroup](https://documentation.bloomreach.com/content/reference/content-type-fields#selectable-fieldgroup)"},"System":{"type":"object","properties":{"createdBy":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"updatedBy":{"type":"string"},"updatedAt":{"type":"string","format":"date-time"},"published":{"type":"boolean"}},"description":"system properties","readOnly":true},"BaseDocument":{"required":["contentType","fields"],"type":"object","properties":{"contentType":{"type":"string","description":"the content type of the document (eg banner, newsArticle). The value for the contentType may optionally include the namespace prefix; this is only required in case the type is in a namespace other than 'brxsaas', eg mynamespace:content"},"fields":{"type":"array","description":"fields of this document. A document field represents an attribute of the document, as specified in the document's content type. See [Content type fields](https://documentation.bloomreach.com/content/reference/content-type-fields) and [General concepts](https://documentation.bloomreach.com/content/docs/content-model-concepts)","items":{"$ref":"#/components/schemas/DocumentField"}}},"description":"The internal data of a document, including content type and fields"},"Page":{"required":["displayName","document","layout","name"],"type":"object","properties":{"name":{"pattern":"^[a-z0-9-._]*","type":"string","description":"identifying name of this page. Only valid characters are lowercase alphanumeric, dot, dash and underscore. This value appears in URLs"},"displayName":{"type":"string","description":"name of this page. Used in labels in the CMS UI and in Delivery API. The displayName can only be set if either is true:a. the page is new, b. the page only exists in the project specified in this operation"},"locale":{"type":"string","description":"page locale"},"layout":{"type":"string","description":"the page template"},"document":{"$ref":"#/components/schemas/BaseDocument"},"containers":{"type":"array","description":"array of containers of this page","items":{"$ref":"#/components/schemas/PageContainer"}},"system":{"$ref":"#/components/schemas/System"}}},"PageComponent":{"type":"object","properties":{"componentDefinition":{"type":"string"},"updateContentOnPageSync":{"type":"boolean","description":"identifies if the content of this component as a target page will be overwritten with the content from the source page in page synchronization. It is applicable for page specific components."},"componentConfigurations":{"type":"array","description":"The list of component configurations for this component","items":{"$ref":"#/components/schemas/PageComponentConfiguration"}}},"description":"array of components used in this container"},"PageComponentConfiguration":{"type":"object","properties":{"id":{"type":"string","description":"The id of this configuration. The id of the default variant of a component should be DEFAULT, for the rest of the variants, the variant id is created in the format of campaign_id:campaign_segment_id or segmentation_id:segment_id, See [Segmentation & Campaigns](https://documentation.bloomreach.com/content/docs/content-audiences)"},"content":{"$ref":"#/components/schemas/BaseDocument"},"parameters":{"type":"array","description":"The list of component parameters for this configuration","items":{"$ref":"#/components/schemas/StringParameter"}}},"description":"A configuration for a PageComponent"},"PageContainer":{"required":["path"],"type":"object","properties":{"path":{"type":"string","description":"path of the container"},"components":{"type":"array","description":"array of components used in this container","items":{"$ref":"#/components/schemas/PageComponent"}}},"description":"array of containers of this page"},"StringParameter":{"type":"object","properties":{"name":{"type":"string","description":"name of this parameter"},"value":{"type":"string","description":"value of this parameter"}},"description":"The list of component parameters for this configuration"},"ResouceBundleKey":{"required":["name"],"type":"object","properties":{"name":{"pattern":"^[a-zA-Z0-9-._]*","type":"string","description":"identifying the key name that is used to retrieve a localized message from the resource bundle, unique within the resource bundle. Valid characters are only lower/uppercase letters, numbers, and '-' '.' '_'"},"description":{"type":"string","description":"description of this resource bundle key"}},"description":"It defines a key in a resource bundle which is used to retrieve a localized message from the resource bundle"},"ResouceBundleMessage":{"required":["key"],"type":"object","properties":{"key":{"pattern":"^[a-zA-Z0-9-._]*","type":"string","description":"identifying key of the message. The keys that are defined as 'ResouceBundleKey' can be set here. Only valid characters are lower/uppercase letters, numbers, and '-' '.' '_'"},"value":{"type":"string","description":"value of this resource bundle message"}},"description":"a key-value pair that defines the message for a specific key in a value set."},"ResourceBundle":{"required":["displayName","id","keys","name","path","valueSets"],"type":"object","properties":{"name":{"pattern":"^[a-z0-9-._]*","type":"string","description":"identifying name of this resource bundle. Only valid characters are lowercase alphanumeric, dash, dot, and underscore. This value appears in URLs. The value must alsomatch the document name(last part of the path) in the document path."},"displayName":{"type":"string","description":"name of this resource bundle. Used in labels in the CMS UI"},"id":{"pattern":"^[a-zA-Z0-9-._]*","type":"string","description":"id of the resource bundle which is expected to be unique in content application. The resource bundle is assigned with this unique id."},"path":{"type":"string","description":"absolute path of this resource bundle in the content repository"},"keys":{"type":"array","description":"keys of the resource bundle. The messages in a resource bundle are fetched by key values.","items":{"$ref":"#/components/schemas/ResouceBundleKey"}},"valueSets":{"type":"array","description":"value sets of the resource bundle. Typically, a value set represents all values for a specific locale inside the resource bundle.","items":{"$ref":"#/components/schemas/ResourceBundleValueSet"}},"system":{"$ref":"#/components/schemas/System"}},"description":"A resource bundle is a collection of key-message pairs organized by value sets which are mostly locales. It simplify the creation of internationalized applications by allowing you to conveniently store all locale-specific messages in a single place."},"ResourceBundleValueSet":{"required":["name"],"type":"object","properties":{"messages":{"type":"array","description":"messages in the value set","items":{"$ref":"#/components/schemas/ResouceBundleMessage"}},"name":{"pattern":"^[a-zA-Z0-9-._]*","type":"string","description":"name of the message value set. Expects a string value. Default messages are defined in a specific value set named 'DEFAULT'.For locale specicific messages, locale names are defined as value set name such as 'nl' (Dutch) or 'en_US' (American English"}},"description":"A value set represents all messages for a specific locale(mostly) inside the resource bundle.Default messages are defined in a specific value set named 'DEFAULT'."},"DetailedTranslationSource":{"type":"object","properties":{"path":{"type":"string","description":"path of the content"},"type":{"type":"string","description":"type of the content","enum":["document","page","folder"]},"translations":{"type":"array","description":"pages with merge or rebase errors","items":{"$ref":"#/components/schemas/DetailedTranslationTarget"}}},"description":"Detailed view of the translations of content"},"DetailedTranslationTarget":{"type":"object","properties":{"path":{"type":"string","description":"path of the content"},"locale":{"type":"string","description":"locale of the content"},"status":{"type":"string","description":"status of the content","enum":["linked","suggested"]}},"description":"Detailed view of the translation target"},"SimpleTranslationSource":{"type":"object","properties":{"path":{"type":"string","description":"path of the content"},"translations":{"type":"array","description":"paths of the translation suggestions","items":{"type":"string"}}},"description":"Simple view of the translation suggestions of content"},"TranslationJob":{"properties":{"operationId":{"type":"string","description":"generated unique id for the operation"},"status":{"type":"string","description":"status of the operation","enum":["COMPLETED","STARTING","STARTED","STOPPING","STOPPED","FAILED","ABANDONED"]},"exitMessage":{"type":"string","description":"exit message in case of operation failure"},"readCount":{"type":"integer","description":"number of records in input payload","format":"int32"},"writeCount":{"type":"integer","description":"written items","format":"int32"},"skipCount":{"type":"integer","description":"skipped items","format":"int32"},"startTime":{"type":"string","description":"operation start time","format":"date-time"},"endTime":{"type":"string","description":"operation end time","format":"date-time"},"errorLog":{"type":"array","description":"error logs for failed linking operations","items":{"type":"string"}}},"description":"Translation job operation details"},"LinkContent":{"type":"array","items":{"properties":{"path":{"type":"string","description":"path of the content"},"translations":{"type":"array","description":"paths of the target translations","items":{"type":"string"}}}},"description":"The source and target content to link as translations"},"UnlinkContent":{"type":"array","items":{"type":"string"},"description":"The content to unlink from existing translations"}},"examples":{"DetailedDocumentTranslationExample":{"value":{"path":"/content/documents/brxsaas/channel-en/banners/brand-1","type":"document","translations":[{"path":"/content/documents/brxsaas/channel-de/banners/brand-1","locale":"de_DE","status":"linked"},{"path":"/content/documents/brxsaas/channel-fr/banners/brand-1","locale":"fr_FR","status":"suggested"}]}},"DetailedPageTranslationExample":{"value":{"path":"/content/documents/channel-en/pages/articles","type":"page","translations":[{"path":"/content/documents/brxsaas/channel-de/pages/articles","locale":"de_DE","status":"linked"},{"path":"/content/documents/brxsaas/channel-fr/pages/articles","locale":"fr_FR","status":"suggested"}]}},"DetailedFolderTranslationExample":{"value":{"path":"/content/documents/channel-en/banners","type":"folder","translations":[{"path":"/content/documents/brxsaas/channel-de/banners","locale":"de_DE","status":"linked"},{"path":"/content/documents/brxsaas/channel-fr/banners","locale":"fr_FR","status":"suggested"}]}},"DetailedFolderChildrenTranslationExample":{"value":[{"path":"/content/documents/channel-en/banners/contacts","type":"folder","translations":[{"path":"/content/documents/brxsaas/channel-de/banners/contacts","locale":"de_DE","status":"linked"},{"path":"/content/documents/brxsaas/channel-fr/banners/contacts","locale":"fr_FR","status":"suggested"}]},{"path":"/content/documents/brxsaas/channel-en/banners/brand-1","type":"document","translations":[{"path":"/content/documents/brxsaas/channel-de/banners/brand-1","locale":"de_DE","status":"linked"},{"path":"/content/documents/brxsaas/channel-fr/banners/brand-1","locale":"fr_FR","status":"suggested"}]}]},"SimpleContentTranslationExample":{"value":{"path":"/content/documents/channel-en/banners/brand-1","translations":["/content/documents/brxsaas/channel-fr/banners/brand-1"]}},"SimpleContentListTranslationExample":{"value":[{"path":"/content/documents/channel-en/banners/contacts","translations":["/content/documents/brxsaas/channel-fr/banners/contacts"]},{"path":"/content/documents/brxsaas/channel-en/banners/brand-1","translations":["/content/documents/brxsaas/channel-fr/banners/brand-1"]}]},"NewTranslationJobExample":{"value":{"operationId":"b7e8c433-ee81-4aef-b904-83c4d12a4bd3","status":"STARTING","exitMessage":null,"readCount":0,"writeCount":0,"skipCount":0,"startTime":null,"endTime":null,"errorLog":[]}},"SuccessfulTranslationJobExample":{"value":{"operationId":"b7e8c433-ee81-4aef-b904-83c4d12a4bd3","status":"COMPLETED","exitMessage":null,"readCount":1,"writeCount":1,"skipCount":0,"startTime":"2023-09-21T10:12:27.070+00:00","endTime":"2023-09-21T10:12:27.162+00:00","errorLog":[]}},"FailedTranslationJobExample":{"value":{"operationId":"b7e8c433-ee81-4aef-b904-83c4d12a4bd3","status":"COMPLETED","exitMessage":null,"readCount":1,"writeCount":0,"skipCount":1,"startTime":"2023-09-21T10:12:27.070+00:00","endTime":"2023-09-21T10:12:27.162+00:00","errorLog":[{"path":"/content/documents/content-en/banners/brand-1","error":"Content at '/content/documents/content-fr/pages/articles' does not have the same content type as '/content/documents/content-en/banners/brand-1'"}]}},"UnlinkContentExample":{"value":["/content/documents/brxsaas/banners","/content/documents/brxsaas/pages/articles","/content/documents/brxsaas/banners/brand-1"]}},"securitySchemes":{"bearerAuth":{"type":"apiKey","name":"x-auth-token","in":"header"}}},"x-readme":{"explorer-enabled":true,"proxy-enabled":true}}