For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • Métodos API
      • POSTLogin
      • POSTLanguages
      • POSTCreate Appointment
      • POSTCreate Appointment Representation
      • POSTCreate Appointment Representation Guests
      • POSTCancel Appointment
      • POSTCouncil evidence summary
      • POSTCouncil Info
      • POSTCouncils
      • POSTAssign Appointment to Operator
      • POSTAppointment Documentation
      • POSTCouncil Documentation
      • POSTCompany Month Schedule
      • POSTDay slots
      • POSTShare appointment
      • POSTUpload council Act
      • POSTCompany Procedures
      • POSTReschedule Appointment
      • POSTOrganization companies
      • POSTOrganization Users
      • POSTCreate Appointment_External
      • POSTCreate Appointment Representation_External
      • POSTCreate Appointment Representation Guests_External
      • POSTCouncils_External
      • POSTCouncil Info_External
      • POSTCancel Appointment_External
      • POSTCouncil evidence summary_External
      • POSTAssign Appointment to Operator_External
LogoLogo
Métodos APIOvac

Councils

|View as Markdown|Open in Claude|
POST
/graphql/councils
POST
/graphql/councils
$curl -X POST https://api.ovac.pre.councilbox.com/graphql/councils \
> -H "x-jwt-token: <apiKey>" \
> -H "Content-Type: application/json" \
> -d '{
> "query": "query Councils(\r\n $companyId: Int\r\n\t$state: [Int]\r\n $externalId: String\r\n\t$options: OptionsInput\r\n\t$fromDate: String,\r\n $toDate: String\r\n) {\r\n councils (\r\n companyId: $companyId\r\n companyExternalId: $companyExternalId\r\n state: $state\r\n externalId: $externalId\r\n options: $options\r\n fromDate: $fromDate,\r\n toDate: $toDate\r\n ){\r\n list {\r\n id\r\n name\r\n observations\r\n state\r\n councilType\r\n creationDate\r\n dateStart\r\n dateRealEnd\r\n dateRealStart\r\n participants {\r\n name\r\n surname\r\n }\r\n }\r\n total\r\n }\r\n}",
> "variables": {
> "companyId": 12345,
> "fromDate": "2026-05-17T00:00Z",
> "toDate": "2026-05-19T00:00Z",
> "state": [
> 60
> ],
> "externalId": "",
> "councilTypes": [
> 5,
> 6,
> 7
> ]
> }
>}'
200Councils
1{
2 "data": {
3 "councils": {
4 "list": [
5 {
6 "id": 64879,
7 "name": "TEST",
8 "observations": "",
9 "state": 60,
10 "councilType": 5,
11 "creationDate": "2026-05-18T14:54:55.478Z",
12 "dateStart": "2026-05-18T17:00:44.244Z",
13 "dateRealEnd": "2026-05-19T07:43:07.769Z",
14 "dateRealStart": "2026-05-18T15:27:37.328Z",
15 "participants": [
16 {
17 "name": "SOY EL PARTICIPANTE",
18 "surname": "TEST"
19 }
20 ]
21 },
22 {
23 "id": 64767,
24 "name": "test creación cita",
25 "observations": "opcional",
26 "state": 60,
27 "councilType": 5,
28 "creationDate": "2026-04-23T15:16:10.085Z",
29 "dateStart": "2026-05-18T15:00:00.000Z",
30 "dateRealEnd": "2026-05-18T09:48:53.988Z",
31 "dateRealStart": "2026-05-18T09:48:37.215Z",
32 "participants": [
33 {
34 "name": "Name of participant",
35 "surname": "Surname of participant"
36 },
37 {
38 "name": "Name of participant",
39 "surname": "Surname of participant"
40 },
41 {
42 "name": "Name of participant",
43 "surname": "Surname of participant"
44 },
45 {
46 "name": "Name of participant",
47 "surname": "Surname of participant"
48 }
49 ]
50 },
51 {
52 "id": 64817,
53 "name": "test creación cita",
54 "observations": "Estas son observaciones",
55 "state": 60,
56 "councilType": 5,
57 "creationDate": "2026-05-06T10:28:28.123Z",
58 "dateStart": "2026-05-16T15:00:00.000Z",
59 "dateRealEnd": "2026-05-18T09:54:30.864Z",
60 "dateRealStart": "2026-05-18T09:49:51.227Z",
61 "participants": [
62 {
63 "name": "Name of participant",
64 "surname": "Surname of participant"
65 }
66 ]
67 },
68 {
69 "id": 64706,
70 "name": "TEST",
71 "observations": "Observaciones de la cita",
72 "state": 60,
73 "councilType": 5,
74 "creationDate": "2026-04-21T07:30:28.381Z",
75 "dateStart": "2026-04-21T08:00:47.339Z",
76 "dateRealEnd": "2026-04-21T07:58:30.345Z",
77 "dateRealStart": "2026-04-21T07:31:23.016Z",
78 "participants": [
79 {
80 "name": "SOY EL PARTICIPANTE",
81 "surname": "TEST"
82 }
83 ]
84 },
85 {
86 "id": 64692,
87 "name": "TEST",
88 "observations": "",
89 "state": 60,
90 "councilType": 5,
91 "creationDate": "2026-04-17T10:00:01.636Z",
92 "dateStart": "2026-04-17T10:30:51.581Z",
93 "dateRealEnd": "2026-04-17T10:01:37.188Z",
94 "dateRealStart": "2026-04-17T10:00:40.635Z",
95 "participants": [
96 {
97 "name": "SOY EL PARTICIPANTE",
98 "surname": "TEST"
99 }
100 ]
101 },
102 {
103 "id": 64690,
104 "name": "TEST",
105 "observations": "",
106 "state": 60,
107 "councilType": 5,
108 "creationDate": "2026-04-17T09:35:42.743Z",
109 "dateStart": "2026-04-17T10:00:27.195Z",
110 "dateRealEnd": "2026-04-17T09:37:51.758Z",
111 "dateRealStart": "2026-04-17T09:36:34.266Z",
112 "participants": [
113 {
114 "name": "SOY EL PARTICIPANTE",
115 "surname": "TEST"
116 }
117 ]
118 },
119 {
120 "id": 64687,
121 "name": "TEST",
122 "observations": "Estas son observaciones, es un campo opcional",
123 "state": 60,
124 "councilType": 5,
125 "creationDate": "2026-04-17T07:53:05.205Z",
126 "dateStart": "2026-04-17T08:00:40.436Z",
127 "dateRealEnd": "2026-04-17T08:33:45.051Z",
128 "dateRealStart": "2026-04-17T08:33:37.537Z",
129 "participants": [
130 {
131 "name": "SOY EL PARTICIPANTE",
132 "surname": "TEST"
133 }
134 ]
135 }
136 ],
137 "total": 7
138 }
139 }
140}
# Councils (`query`) Este método permite obtener un listado paginado o filtrado de las citas (consejos) que cumplan con los criterios de búsqueda especificados. Devuelve la información general y de control de cada registro junto con el recuento total de resultados coincidentes, siendo de gran utilidad para la sincronización de agendas y la generación de reportes consolidados por organización, rango de fechas o estados. ### Autenticación > **Tipo:** API Key** Header:** `x-jwt-token` **Ubicación:** Header HTTP_ Ejemplo:_ `x-jwt-token: eyJhbGciOiJIUzI1NiIsInR5cCI6...` ## Referencia de la API ### Parámetros de Entrada (Variables) | Parámetro | Descripción | Requerido | Tipo | | --- | --- | --- | --- | | companyId | Identificador de la organización | SI | Integer | | externalId | Identificador externo de la organización. Si se indica el externalId no se debe indicar companyId | NO | String | | state | lista de estados por los que filtrar las citas: <br>'`-1`' -> Cancelado <br>`10` -> Confirmado <br>`20` -> Sala abierta <br>`25` -> Pausa <br>`40` -> Finalizada la sesión de vídeoatención/Gestión <br>`45` -> Procesando informe <br>`60` -> Completada <br>`65` -> Incompleta | SI | Integer | | fromDate | fecha inicial del rango de búsqueda, formato UTC. | SI | String | | toDate | fecha final del rango de búsqueda, formato UTC. | SI | String | | councilTypes | Filtro de tipo de cita: <br>`5` -> Videoatención <br>`6` -> Gestión <br>`7` -> Presencial | NO | Integer | ⚠️ **Nota sobre** **`councilTypes`****:** Aunque en algunos ejemplos heredados de variables se incluye el campo `councilTypes`, este no se encuentra declarado en la firma de la consulta base provista por el backend. Cualquier intento de enviarlo sin modificar la declaración de la query será ignorado de forma silenciosa. ### Campos de Respuesta (Payload) La consulta devuelve un objeto raíz `councils` compuesto por las siguientes propiedades: | | Descripción | Tipo | | --- | --- | --- | | data | Objeto del conjunto de datos | Object | | data.councils | Objeto de la cita | Object | | data.councils.list | Array de las citas obtenidas aplicando el filtro | Object | | data.councils.list\[\].id | Identificador de la cita | Integer | | data.councils.list\[\].name | Nombre de la cita | String | | data.councils.list\[\].observations | Observaciones que se han añadido para la cita | String | | data.councils.list\[\].state | Estado de la cita | Integer | | data.councils.list\[\].councilType | Tipo de cita (videoatención \[5\], gestión\[6\] o presencial\[7\]) | Integer | | data.councils.list\[\].creationDate | Fecha de creación de cita, en formato UTC | String | | data.councils.list\[\].dateStart | Fecha determinada en la cual se va a realizar el trámite, en formato UTC | String | | data.councils.list\[\].dateRealEnd | Fecha en la que se ha finalizado oficialmente la cita, en formato UTC | String | | data.councils.list\[\].dateRealStart | echa en la que se iniciado oficialmente la cita, en formato UTC | String | | data.councils.list\[\].participants | Array de los participantes | Array | | data.councils.list\[\].participants\[\].name | Nombre del participante | String | | data.councils.list\[\].participants\[\].surname | Apellido del participante | String | | data.councils.total | Recuento del número de citas obtenidas con el filtro aplcado | Integer | ## Ejemplos de Código y Peticiones ### 1\. Consulta GraphQL ``` graphql query Councils( $companyId: Int $companyExternalId: String $state: [Int] $externalId: String $options: OptionsInput $fromDate: String $toDate: String ) { councils( companyId: $companyId companyExternalId: $companyExternalId state: $state externalId: $externalId options: $options fromDate: $fromDate toDate: $toDate ) { list { id name observations state councilType creationDate dateStart dateRealEnd dateRealStart participants { name surname } } total } } ``` ### 2\. Variables de la Petición (JSON Payload) ``` json { "companyId": 2191, "fromDate": "2026-05-17T00:00Z", "toDate": "2026-05-19T00:00Z", "state": [60], "externalId": "" } ``` ### 3\. Ejemplo de comando cURL ``` bash curl --location "https://api.ovac.pre.councilbox.com/graphql" \ --header "Content-Type: application/json" \ --header "x-jwt-token: {{token}}" \ --data '{"query":"query Councils($companyId: Int, $companyExternalId: String, $state: [Int], $externalId: String, $options: OptionsInput, $fromDate: String, $toDate: String) { councils (companyId: $companyId, companyExternalId: $companyExternalId, state: $state, externalId: $externalId, options: $options, fromDate: $fromDate, toDate: $toDate ){ list { id name observations state councilType creationDate dateStart dateRealEnd dateRealStart participants { name surname } } total } }","variables":{"companyId":2191,"fromDate":"2026-05-17T00:00Z","toDate":"2026-05-19T00:00Z","state":[60],"externalId":""}}' ``` ### 4\. Respuesta Esperada (200 OK) ``` json { "data": { "councils": { "list": [ { "id": 64767, "name": "test creación cita", "observations": "opcional", "state": 60, "councilType": 5, "creationDate": "2026-04-23T15:16:10.085Z", "dateStart": "2026-05-18T15:00:00.000Z", "dateRealEnd": "2026-05-18T09:48:53.988Z", "dateRealStart": "2026-05-18T09:48:37.215Z", "participants": [ { "name": "Name of participant", "surname": "Surname of participant" } ] } ], "total": 1 } } } ``` > **Nota OpenAPI/Fern:** esta operación GraphQL se documenta como `/graphql/councils` para que Fern pueda mostrarla como operación independiente. La ruta técnica real de ejecución es `POST /graphql`.
Was this page helpful?
Previous

Council Info

Next

Assign Appointment to Operator

Built with

Este método permite obtener un listado paginado o filtrado de las citas (consejos) que cumplan con los criterios de búsqueda especificados. Devuelve la información general y de control de cada registro junto con el recuento total de resultados coincidentes, siendo de gran utilidad para la sincronización de agendas y la generación de reportes consolidados por organización, rango de fechas o estados.

Autenticación

Tipo: API Key**
Header:** x-jwt-token
Ubicación: Header HTTP_
Ejemplo:_ x-jwt-token: eyJhbGciOiJIUzI1NiIsInR5cCI6...

Referencia de la API

Parámetros de Entrada (Variables)

ParámetroDescripciónRequeridoTipo
companyIdIdentificador de la organizaciónSIInteger
externalIdIdentificador externo de la organización. Si se indica el externalId no se debe indicar companyIdNOString
statelista de estados por los que filtrar las citas:
‘-1’ -> Cancelado
10 -> Confirmado
20 -> Sala abierta
25 -> Pausa
40 -> Finalizada la sesión de vídeoatención/Gestión
45 -> Procesando informe
60 -> Completada
65 -> Incompleta
SIInteger
fromDatefecha inicial del rango de búsqueda, formato UTC.SIString
toDatefecha final del rango de búsqueda, formato UTC.SIString
councilTypesFiltro de tipo de cita:
5 -> Videoatención
6 -> Gestión
7 -> Presencial
NOInteger

⚠️ Nota sobre councilTypes****: Aunque en algunos ejemplos heredados de variables se incluye el campo councilTypes, este no se encuentra declarado en la firma de la consulta base provista por el backend. Cualquier intento de enviarlo sin modificar la declaración de la query será ignorado de forma silenciosa.

Campos de Respuesta (Payload)

La consulta devuelve un objeto raíz councils compuesto por las siguientes propiedades:

DescripciónTipo
dataObjeto del conjunto de datosObject
data.councilsObjeto de la citaObject
data.councils.listArray de las citas obtenidas aplicando el filtroObject
data.councils.list[].idIdentificador de la citaInteger
data.councils.list[].nameNombre de la citaString
data.councils.list[].observationsObservaciones que se han añadido para la citaString
data.councils.list[].stateEstado de la citaInteger
data.councils.list[].councilTypeTipo de cita (videoatención [5], gestión[6] o presencial[7])Integer
data.councils.list[].creationDateFecha de creación de cita, en formato UTCString
data.councils.list[].dateStartFecha determinada en la cual se va a realizar el trámite, en formato UTCString
data.councils.list[].dateRealEndFecha en la que se ha finalizado oficialmente la cita, en formato UTCString
data.councils.list[].dateRealStartecha en la que se iniciado oficialmente la cita, en formato UTCString
data.councils.list[].participantsArray de los participantesArray
data.councils.list[].participants[].nameNombre del participanteString
data.councils.list[].participants[].surnameApellido del participanteString
data.councils.totalRecuento del número de citas obtenidas con el filtro aplcadoInteger

Ejemplos de Código y Peticiones

1. Consulta GraphQL

1query Councils(
2 $companyId: Int
3 $companyExternalId: String
4 $state: [Int]
5 $externalId: String
6 $options: OptionsInput
7 $fromDate: String
8 $toDate: String
9) {
10 councils(
11 companyId: $companyId
12 companyExternalId: $companyExternalId
13 state: $state
14 externalId: $externalId
15 options: $options
16 fromDate: $fromDate
17 toDate: $toDate
18 ) {
19 list {
20 id
21 name
22 observations
23 state
24 councilType
25 creationDate
26 dateStart
27 dateRealEnd
28 dateRealStart
29 participants {
30 name
31 surname
32 }
33 }
34 total
35 }
36}

2. Variables de la Petición (JSON Payload)

1{
2 "companyId": 2191,
3 "fromDate": "2026-05-17T00:00Z",
4 "toDate": "2026-05-19T00:00Z",
5 "state": [60],
6 "externalId": ""
7}

3. Ejemplo de comando cURL

$curl --location "https://api.ovac.pre.councilbox.com/graphql" \
>--header "Content-Type: application/json" \
>--header "x-jwt-token: {{token}}" \
>--data '{"query":"query Councils($companyId: Int, $companyExternalId: String, $state: [Int], $externalId: String, $options: OptionsInput, $fromDate: String, $toDate: String) { councils (companyId: $companyId, companyExternalId: $companyExternalId, state: $state, externalId: $externalId, options: $options, fromDate: $fromDate, toDate: $toDate ){ list { id name observations state councilType creationDate dateStart dateRealEnd dateRealStart participants { name surname } } total } }","variables":{"companyId":2191,"fromDate":"2026-05-17T00:00Z","toDate":"2026-05-19T00:00Z","state":[60],"externalId":""}}'

4. Respuesta Esperada (200 OK)

1{
2 "data": {
3 "councils": {
4 "list": [
5 {
6 "id": 64767,
7 "name": "test creación cita",
8 "observations": "opcional",
9 "state": 60,
10 "councilType": 5,
11 "creationDate": "2026-04-23T15:16:10.085Z",
12 "dateStart": "2026-05-18T15:00:00.000Z",
13 "dateRealEnd": "2026-05-18T09:48:53.988Z",
14 "dateRealStart": "2026-05-18T09:48:37.215Z",
15 "participants": [
16 {
17 "name": "Name of participant",
18 "surname": "Surname of participant"
19 }
20 ]
21 }
22 ],
23 "total": 1
24 }
25 }
26}

Nota OpenAPI/Fern: esta operación GraphQL se documenta como /graphql/councils para que Fern pueda mostrarla como operación independiente. La ruta técnica real de ejecución es POST /graphql.

Authentication

x-jwt-tokenstring
JWT token obtained from Login.

Request

This endpoint expects an object.
querystringRequired
GraphQL operation
variablesobjectOptional
GraphQL variables

Response

Successful response. GraphQL business errors may be returned inside the JSON errors field while transport status remains HTTP 200.