Search API (feature request) #735

Closed
opened 2026-02-04 22:06:18 +03:00 by OVERLORD · 12 comments
Owner

Originally created by @MacChuck on GitHub (Jul 2, 2018).

Originally assigned to: @ssddanbrown on GitHub.

Desired Feature:
It would be nice for there to be an API or something to query and return search results (like from Slack or discord bots).

Originally created by @MacChuck on GitHub (Jul 2, 2018). Originally assigned to: @ssddanbrown on GitHub. Desired Feature: It would be nice for there to be an API or something to query and return search results (like from Slack or discord bots).
OVERLORD added the 🔨 Feature Request🏭 Back-End🔩 API Request labels 2026-02-04 22:06:18 +03:00
Author
Owner

@msaus commented on GitHub (Jul 2, 2018):

1

@msaus commented on GitHub (Jul 2, 2018): 1
Author
Owner

@lommes commented on GitHub (Jul 2, 2018):

I totally agree with you that it would be a nice feature. It will be very challenging to implement this in a usefull way regarding authorizations

@lommes commented on GitHub (Jul 2, 2018): I totally agree with you that it would be a nice feature. It will be very challenging to implement this in a usefull way regarding authorizations
Author
Owner

@timeandtimeago commented on GitHub (Aug 8, 2018):

+1
An API would be very useful.

@timeandtimeago commented on GitHub (Aug 8, 2018): +1 An API would be very useful.
Author
Owner

@IgorZorich commented on GitHub (Oct 2, 2019):

+1

@IgorZorich commented on GitHub (Oct 2, 2019): +1
Author
Owner

@MarcusTheSmith commented on GitHub (Nov 5, 2019):

+1
With the rise of the Headless CMS, BookStack is this one step (maybe two if you include consumption libraries for JS, etc) away from being able to have content integrated into modern webApps. Strapi just got funding for their Headless CMS and the talk of that paradigm being the new norm is growing.

@MarcusTheSmith commented on GitHub (Nov 5, 2019): +1 With the rise of the Headless CMS, BookStack is this one step (maybe two if you include consumption libraries for JS, etc) away from being able to have content integrated into modern webApps. Strapi just got funding for their Headless CMS and the talk of that paradigm being the new norm is growing.
Author
Owner

@emillan commented on GitHub (Apr 2, 2020):

+1
There is already a list endpoint /api/books that returns a listing of books visible to a user,
maybe a simple search parameter could be added to it

@emillan commented on GitHub (Apr 2, 2020): +1 There is already a list endpoint `/api/books` that returns a listing of books visible to a user, maybe a simple search parameter could be added to it
Author
Owner

@ssddanbrown commented on GitHub (Apr 4, 2020):

Hi @emillan,

It should be possible to already filter down the results of that API endpoint. Within the /api/docs of your instance there should be a section on "Listing Endpoints". This details how you can manipulate such API endpoints as the /api/books.

For example, you can call:

/api/books?filter[name:like]=%cat%

The get books that contain cat in their name. This system will be adopted for the other models (Chaters, pages, shelves) in the near future.

Feedback on this system is greatly welcomed in issue #1852.

@ssddanbrown commented on GitHub (Apr 4, 2020): Hi @emillan, It should be possible to already filter down the results of that API endpoint. Within the `/api/docs` of your instance there should be a section on "Listing Endpoints". This details how you can manipulate such API endpoints as the `/api/books`. For example, you can call: ``` /api/books?filter[name:like]=%cat% ``` The get books that contain `cat` in their name. This system will be adopted for the other models (Chaters, pages, shelves) in the near future. Feedback on this system is greatly welcomed in issue #1852.
Author
Owner

@gren236 commented on GitHub (Nov 8, 2021):

Would be really great for my case, as I want to search for all pages with a specific tag using API.

@gren236 commented on GitHub (Nov 8, 2021): Would be really great for my case, as I want to search for all pages with a specific tag using API.
Author
Owner

@ssddanbrown commented on GitHub (Nov 14, 2021):

A general search API endpoint has now been added within 6f1bdbf771. This essentially provides an API endpoint for the same system used by the main search bar within BookStack.

There is some awkwardness in this endpoint, due to how the search system is implemented in the back-end, but it should hopefully address the needs here.

This will be part of the next feature release.

Preview

Search API Preview

@ssddanbrown commented on GitHub (Nov 14, 2021): A general search API endpoint has now been added within 6f1bdbf771b00be12db676e6289830d8cdc7ecda. This essentially provides an API endpoint for the same system used by the main search bar within BookStack. There is some awkwardness in this endpoint, due to how the search system is implemented in the back-end, but it should hopefully address the needs here. This will be part of the next feature release. ### Preview ![Search API Preview](https://user-images.githubusercontent.com/8343178/141689696-91e54c0c-1b4a-4076-9644-ef73a70d9fb5.png)
Author
Owner

@JoseZamora24 commented on GitHub (Mar 8, 2024):

@ssddanbrown Hello, I saw that you have enabled searches through the API. My problem is that I want to make a query outside of my server, I am quite new to this and to bookstack and I would like to know if any previous steps must be enabled before being able to use this api. The error tells me that I do not have access to the path mywebdev/api/requests/search-all.http

If you are so kind as to help me or give me information, I would appreciate it. Thank you so much.

@JoseZamora24 commented on GitHub (Mar 8, 2024): @ssddanbrown Hello, I saw that you have enabled searches through the API. My problem is that I want to make a query outside of my server, I am quite new to this and to bookstack and I would like to know if any previous steps must be enabled before being able to use this api. The error tells me that I do not have access to the path mywebdev/api/requests/search-all.http If you are so kind as to help me or give me information, I would appreciate it. Thank you so much.
Author
Owner

@ssddanbrown commented on GitHub (Mar 8, 2024):

@JoseZamora24 I'm not sure where you're getting that API endpoint from.
Please can you open a new fresh support issue for this? In that support issue, detail what code language you're writing this in, and I'll look to provide an example/sample when I get some time to do so.

@ssddanbrown commented on GitHub (Mar 8, 2024): @JoseZamora24 I'm not sure where you're getting that API endpoint from. Please can you open a new fresh support issue for this? In that support issue, detail what code language you're writing this in, and I'll look to provide an example/sample when I get some time to do so.
Author
Owner

@JoseZamora24 commented on GitHub (Mar 9, 2024):

I'm trying to make a query in axios from botpress. My idea is to do a
search for all the books or pages and I need it to show me the results of
all the books along with their corresponding IDs. I need this because I
don't know how to search for a specific book or page without having the ID.
Since I am making a chatbot with AI so that it can consult the bookstack
information and can have information on all the manuals that I have hosted
on my website.

I have tried making a query to namemyweb/api and namemyweb/api/search and
there is no way, I also tried /pages and /books and it only returned the
value of the titles but I need to be able to access the content. I also
tried namemywebdev/api/requests/search-all.http

I don't know if you can help me with this or give me any ideas. Although
being able to consult everything and being able to save the content of
everything in a variable would help me. Thank you so much.

El vie, 8 mar 2024 a las 16:29, Dan Brown @.***>)
escribió:

@JoseZamora24 https://github.com/JoseZamora24 I'm not sure where you're
getting that API endpoint from.
Please can you open a new fresh support issue for this? In that support
issue, detail what code language you're writing this in, and I'll look to
provide an example/sample when I get some time to do so.


Reply to this email directly, view it on GitHub
https://github.com/BookStackApp/BookStack/issues/909#issuecomment-1985896797,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BGYT3JI3U7WNLEAEEJPYN3LYXHKM7AVCNFSM4FHZ7XSKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJYGU4DSNRXHE3Q
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
*Jose Manuel Zamora *Ibáñez

Global IT
C/ Silicio 10 Pol. Ind. Los Camachos
30369 CARTAGENA
@.*** @.***>
T.(+34) 968510200 <+34%20968%2051%2002%2000>

--
Este mensaje y cualquier fichero anexo al mismo se envían desde el sistema
de correo electrónico de Zamora Company, y se dirige exclusivamente a su
destinatario (s), y puede contener información confidencial, sometida a
secreto profesional. Si no es Ud. el destinatario indicado, queda
notificado de que su utilización, divulgación y/o copia sin autorización
están prohibidas en virtud de la legislación vigente.Si ha recibido este
mensaje por error, le rogamos que nos lo comunique inmediatamente por esta
misma vía, lo notifique al remitente y proceda a su destrucción, así como
al de cualquier documento que pudiera adjuntarse.
Los datos se han obtenido
con su consentimiento o como consecuencia de una relación jurídica previa.
Puede usted ejercitar los derechos de acceso, rectificación, cancelación y
oposición así como solicitar la limitación y portabilidad de los mismos.
Para ello puede enviar  un email a @.
**
@.***>. Le informamos asimismo que el responsable
de los datos es Diego Zamora, S.A. con CIF A-30602346  domicilio social en
P.I. Los Camachos, C/ Silicio, 10, 30369 Cartagena.

This message and all
of its attachments are sent from Zamora Company’s email system, and it is
addressed solely to its intended recipient and may contain confidential
information, subject to professional secrecy.If you are not the intended
recipient you are hereby notified that any use, disclosure and/or
unauthorized copying is prohibited by law. If you have received this email
in error, please notify us immediately by return email, and delete this
message, as well as any other documentation that could be attached.
The
data has been obtained with your consent or as a consequence of a previous
relationship. You can exercise your rights to access, rectify, cancel and
oppose this data, as well as ask us to limit it or challenge its
portability, by emailing @.***
@.**>. Diego Zamora S.A. is the controller  (CIF
A-30602346) and his address is P.I. Los Camachos, C/ Silicio, 10, 30369
Cartagena.

@JoseZamora24 commented on GitHub (Mar 9, 2024): I'm trying to make a query in axios from botpress. My idea is to do a search for all the books or pages and I need it to show me the results of all the books along with their corresponding IDs. I need this because I don't know how to search for a specific book or page without having the ID. Since I am making a chatbot with AI so that it can consult the bookstack information and can have information on all the manuals that I have hosted on my website. I have tried making a query to namemyweb/api and namemyweb/api/search and there is no way, I also tried /pages and /books and it only returned the value of the titles but I need to be able to access the content. I also tried namemywebdev/api/requests/search-all.http I don't know if you can help me with this or give me any ideas. Although being able to consult everything and being able to save the content of everything in a variable would help me. Thank you so much. El vie, 8 mar 2024 a las 16:29, Dan Brown ***@***.***>) escribió: > @JoseZamora24 <https://github.com/JoseZamora24> I'm not sure where you're > getting that API endpoint from. > Please can you open a new fresh support issue for this? In that support > issue, detail what code language you're writing this in, and I'll look to > provide an example/sample when I get some time to do so. > > — > Reply to this email directly, view it on GitHub > <https://github.com/BookStackApp/BookStack/issues/909#issuecomment-1985896797>, > or unsubscribe > <https://github.com/notifications/unsubscribe-auth/BGYT3JI3U7WNLEAEEJPYN3LYXHKM7AVCNFSM4FHZ7XSKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJYGU4DSNRXHE3Q> > . > You are receiving this because you were mentioned.Message ID: > ***@***.***> > -- *Jose Manuel Zamora **Ibáñez* *Global IT* C/ Silicio 10 Pol. Ind. Los Camachos 30369 CARTAGENA ***@***.*** ***@***.***> T.(+34) 968510200 <+34%20968%2051%2002%2000> -- *Este mensaje y cualquier fichero anexo al mismo se envían desde el sistema de correo electrónico de Zamora Company, y se dirige exclusivamente a su destinatario (s), y puede contener información confidencial, sometida a secreto profesional. Si no es Ud. el destinatario indicado, queda notificado de que su utilización, divulgación y/o copia sin autorización están prohibidas en virtud de la legislación vigente.Si ha recibido este mensaje por error, le rogamos que nos lo comunique inmediatamente por esta misma vía, lo notifique al remitente y proceda a su destrucción, así como al de cualquier documento que pudiera adjuntarse. Los datos se han obtenido con su consentimiento o como consecuencia de una relación jurídica previa. Puede usted ejercitar los derechos de acceso, rectificación, cancelación y oposición así como solicitar la limitación y portabilidad de los mismos. Para ello puede enviar  un email a ***@***.*** ***@***.***>. Le informamos asimismo que el responsable de los datos es Diego Zamora, S.A. con CIF A-30602346  domicilio social en P.I. Los Camachos, C/ Silicio, 10, 30369 Cartagena. This message and all of its attachments are sent from Zamora Company’s email system, and it is addressed solely to its intended recipient and may contain confidential information, subject to professional secrecy.If you are not the intended recipient you are hereby notified that any use, disclosure and/or unauthorized copying is prohibited by law. If you have received this email in error, please notify us immediately by return email, and delete this message, as well as any other documentation that could be attached. The data has been obtained with your consent or as a consequence of a previous relationship. You can exercise your rights to access, rectify, cancel and oppose this data, as well as ask us to limit it or challenge its portability, by emailing ***@***.*** ***@***.***>. Diego Zamora S.A. is the controller  (CIF A-30602346) and his address is P.I. Los Camachos, C/ Silicio, 10, 30369 Cartagena.*
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#735