Diferencia entre revisiones de «API Terceros/Notas Tercero»
| Línea 48: | Línea 48: | ||
| Página || int || No || Este parámetro indica el número de la página que se debe devolver. Por ejemplo, si se establece en 3, se devolverán los resultados de la tercera página | | Página || int || No || Este parámetro indica el número de la página que se debe devolver. Por ejemplo, si se establece en 3, se devolverán los resultados de la tercera página | ||
|- | |- | ||
| nitTercero || int || No || Este parámetro indica el NIT del tercero. Se devolverán las notas relacionadas a ese tercero | | '''nitTercero''' || int || No || Este parámetro indica el NIT del tercero. Se devolverán las notas relacionadas a ese tercero | ||
|} | |} | ||
| Línea 61: | Línea 61: | ||
{ | { | ||
"id": 1, | "id": 1, | ||
" | "id_tercero": 1234, | ||
" | "nit_tercero": "1234567", | ||
" | "descripcion_tercero": "DESCRIPCIÓN DEL TERCERO", | ||
" | "nota": "NOTA ASOCIADA", | ||
" | "fecha_creacion": "2023-06-20 09:39:45", | ||
"id_usuario": 1, | |||
"usuario": "USUARIO ASOCIADO", | |||
"prioridad": "alta", | |||
"confidencial": true | |||
} | } | ||
] | ] | ||
| Línea 83: | Línea 87: | ||
! Campo !! Tipo de dato !! Descripción | ! Campo !! Tipo de dato !! Descripción | ||
|- | |- | ||
| id || int || Corresponde al identificador de la | | id || int || Corresponde al identificador de la nota | ||
|- | |- | ||
| | | id_tercero || int || Corresponde al identificador del tercero asociado a la nota | ||
|- | |- | ||
| | | nit_tercero || string || Corresponde al NIT asociado a la nota y al id del tercero | ||
|- | |- | ||
| | | descripcion_tercero || string || Descripción del tercero | ||
|- | |- | ||
| | | nota || string || Cuerpo de la nota | ||
|- | |- | ||
| | | fecha_creacion || Date || Fecha de creación de la nota | ||
|- | |||
| id_usuario || int || Corresponde al identificador del usuario asociado a la nota | |||
|- | |||
| usuario || string|| Nombre del usuario asociado al id del usuario | |||
|- | |||
| prioridad || string || Nivel de prioridad de la nota (baja, media, alta) | |||
|- | |||
| confidencial || bool || Define si es una nota confidencial | |||
|} | |} | ||
</Tab> | </Tab> | ||
| Línea 120: | Línea 132: | ||
<syntaxhighlight lang="JSON"> | <syntaxhighlight lang="JSON"> | ||
{ | { | ||
" | "nit_tercero": "1234567", | ||
" | "nota": "NOTA DE PRUEBA DESDE POSTMAN", | ||
" | "prioridad": "media", | ||
"confidencial": false | |||
" | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Línea 134: | Línea 145: | ||
! Campo !! Tipo de dato !! Longitud !! Requerido !! Descripción | ! Campo !! Tipo de dato !! Longitud !! Requerido !! Descripción | ||
|- | |- | ||
| | | nit_tercero || string || 15 || Si || Corresponde al NIT asociado a la nota y al id del tercero | ||
|- | |- | ||
| | | nota || string || 65535 || Si || Cuerpo de la nota | ||
|- | |- | ||
| | | prioridad || string || 10 || Si || Nivel de prioridad de la nota (baja, media, alta) | ||
|- | |- | ||
| | | confidencial || bool || 1 || Si || Definir si es una nota confidencial o no | ||
|} | |} | ||
==== '''AVISO IMPORTANTE:''' ==== | ==== '''AVISO IMPORTANTE:''' ==== | ||
Donde los '''campos no sean obligatorios''' y no se desea asignar algún valor, pruebe digitando '''null''' o '''0''' en los valores de los campos de tipo numérico (int o double). Si es un campo de tipo string no obligatorio, siempre digite '''null'''. | |||
| Línea 165: | Línea 174: | ||
"code": 400, | "code": 400, | ||
"errors": [ | "errors": [ | ||
" | "No existe un tercero asociado al nit: 1234567", | ||
"El campo | "El campo nota es obligatorio", | ||
"El campo de | "El campo prioridad con el valor X no coincide con alguna de las opciones válidas. Digite baja, media o alta" | ||
], | ], | ||
"message": "Problemas de validaciones. Se presentaron errores al crear el registro" | "message": "Problemas de validaciones. Se presentaron errores al crear el registro" | ||
| Línea 198: | Línea 207: | ||
{ | { | ||
"id": 1, | "id": 1, | ||
" | "nit_tercero": "1234567", | ||
" | "nota": "NOTA DE PRUEBA DESDE POSTMAN", | ||
" | "prioridad": "media", | ||
"confidencial": false | |||
" | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| Línea 212: | Línea 220: | ||
! Campo !! Tipo de dato !! Longitud !! Requerido !! Descripción | ! Campo !! Tipo de dato !! Longitud !! Requerido !! Descripción | ||
|- | |- | ||
| id || int || 11 || Si || Corresponde al identificador de la | | id || int || 11 || Si || Corresponde al identificador de la nota | ||
|- | |- | ||
| | | nit_tercero || string || 15 || Si || Corresponde al NIT asociado a la nota y al id del tercero | ||
|- | |- | ||
| | | nota || string || 65535 || Si || Cuerpo de la nota | ||
|- | |- | ||
| | | prioridad || string || 10 || Si || Nivel de prioridad de la nota (baja, media, alta) | ||
|- | |- | ||
| | | confidencial || bool || 1 || Si || Definir si es una nota confidencial o no | ||
|} | |} | ||
==== '''AVISO IMPORTANTE:''' ==== | ==== '''AVISO IMPORTANTE:''' ==== | ||
Donde los '''campos no sean obligatorios''' y no se desea asignar algún valor, pruebe digitando '''null''' o '''0''' en los valores de los campos de tipo numérico (int o double). Si es un campo de tipo string no obligatorio, siempre digite '''null'''. | |||
| Línea 253: | Línea 259: | ||
"errors": [ | "errors": [ | ||
"El campo id es obligatorio", | "El campo id es obligatorio", | ||
" | "No existe un tercero asociado al nit: 1234567", | ||
"El campo nota es obligatorio", | |||
"El campo | "El campo prioridad con el valor X no coincide con alguna de las opciones válidas. Digite baja, media o alta" | ||
"El campo de | |||
], | ], | ||
"message": "Problemas de validaciones. Se presentaron errores al modificar el registro" | "message": "Problemas de validaciones. Se presentaron errores al modificar el registro" | ||
Revisión del 10:42 20 jun 2023
Descripción: PENDIENTE
Autorización: Se requiere autenticación para todas las solicitudes. Las credenciales de autenticación deben ser incluidas en la cabecera de todas las solicitudes a través del campo Authorization utilizando el token de acceso entregado SERPI ERP.
Beneficio: PENDIENTE
Tipos de peticiones: GET, POST, PUT
¿Cómo funciona? PENDIENTE
Métodos
<Tabs> <Tab name = "API Consulta (GET) ">
EndPoint: https://www.apis.serpi.com.co/api/v1/NotaTercero
EndPoint con parámetros: https://www.apis.serpi.com.co/api/v1/NotaTercero?nitTercero=1075229539
| Header | Descripción |
|---|---|
| secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP| Parámetro | Tipo de dato | Requerido | Descripción |
|---|---|---|---|
| Límite | int | No | Este parámetro indica la cantidad de resultados que se deben devolver en una sola página |
| Página | int | No | Este parámetro indica el número de la página que se debe devolver. Por ejemplo, si se establece en 3, se devolverán los resultados de la tercera página |
| nitTercero | int | No | Este parámetro indica el NIT del tercero. Se devolverán las notas relacionadas a ese tercero |
Response
{
"success": true,
"code": 200,
"errors": null,
"message": "1 registro(s) encontrados",
"result": [
{
"id": 1,
"id_tercero": 1234,
"nit_tercero": "1234567",
"descripcion_tercero": "DESCRIPCIÓN DEL TERCERO",
"nota": "NOTA ASOCIADA",
"fecha_creacion": "2023-06-20 09:39:45",
"id_usuario": 1,
"usuario": "USUARIO ASOCIADO",
"prioridad": "alta",
"confidencial": true
}
]
}
{
"success": true
"code": 201,
"message": "No se encontraron registros",
"result": []
}| Campo | Tipo de dato | Descripción |
|---|---|---|
| id | int | Corresponde al identificador de la nota |
| id_tercero | int | Corresponde al identificador del tercero asociado a la nota |
| nit_tercero | string | Corresponde al NIT asociado a la nota y al id del tercero |
| descripcion_tercero | string | Descripción del tercero |
| nota | string | Cuerpo de la nota |
| fecha_creacion | Date | Fecha de creación de la nota |
| id_usuario | int | Corresponde al identificador del usuario asociado a la nota |
| usuario | string | Nombre del usuario asociado al id del usuario |
| prioridad | string | Nivel de prioridad de la nota (baja, media, alta) |
| confidencial | bool | Define si es una nota confidencial |
</Tab>
<Tab name = "API Creación (POST) "> EndPoint: https://www.apis.serpi.com.co/api/v1/NotaTercero
| Header | Descripción |
|---|---|
| secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Request
{
"nit_tercero": "1234567",
"nota": "NOTA DE PRUEBA DESDE POSTMAN",
"prioridad": "media",
"confidencial": false
}
| Campo | Tipo de dato | Longitud | Requerido | Descripción |
|---|---|---|---|---|
| nit_tercero | string | 15 | Si | Corresponde al NIT asociado a la nota y al id del tercero |
| nota | string | 65535 | Si | Cuerpo de la nota |
| prioridad | string | 10 | Si | Nivel de prioridad de la nota (baja, media, alta) |
| confidencial | bool | 1 | Si | Definir si es una nota confidencial o no |
AVISO IMPORTANTE:
Donde los campos no sean obligatorios y no se desea asignar algún valor, pruebe digitando null o 0 en los valores de los campos de tipo numérico (int o double). Si es un campo de tipo string no obligatorio, siempre digite null.
Response
{
"success": true,
"code": 201,
"errors": [],
"message": "Validaciones exitosas. Registro creado exitosamente"
}Validaciones
{
"success": false,
"code": 400,
"errors": [
"No existe un tercero asociado al nit: 1234567",
"El campo nota es obligatorio",
"El campo prioridad con el valor X no coincide con alguna de las opciones válidas. Digite baja, media o alta"
],
"message": "Problemas de validaciones. Se presentaron errores al crear el registro"
}</Tab>
<Tab name = "API Modificar(PUT) "> EndPoint: https://www.apis.serpi.com.co/api/v1/NotaTercero
| Header | Descripción |
|---|---|
| secretkey | Secretkey proporcionada al cliente para consumos de las APIs |
Authorization:
Usar Bearer. Ejemplo “bearer {{token}}”.
{{token}} Token de autorizacion generado por SerpiERP
Request
{
"id": 1,
"nit_tercero": "1234567",
"nota": "NOTA DE PRUEBA DESDE POSTMAN",
"prioridad": "media",
"confidencial": false
}
| Campo | Tipo de dato | Longitud | Requerido | Descripción |
|---|---|---|---|---|
| id | int | 11 | Si | Corresponde al identificador de la nota |
| nit_tercero | string | 15 | Si | Corresponde al NIT asociado a la nota y al id del tercero |
| nota | string | 65535 | Si | Cuerpo de la nota |
| prioridad | string | 10 | Si | Nivel de prioridad de la nota (baja, media, alta) |
| confidencial | bool | 1 | Si | Definir si es una nota confidencial o no |
AVISO IMPORTANTE:
Donde los campos no sean obligatorios y no se desea asignar algún valor, pruebe digitando null o 0 en los valores de los campos de tipo numérico (int o double). Si es un campo de tipo string no obligatorio, siempre digite null.
Response
{
"success": true,
"code": 200,
"errors": [],
"message": "Validaciones exitosas. Registro modificado exitosamente"
}
{
"success": false,
"code": 204,
"errors": null,
"message": "No se encontraron registros con el id 1"
}Validaciones
{
"success": false,
"code": 400,
"errors": [
"El campo id es obligatorio",
"No existe un tercero asociado al nit: 1234567",
"El campo nota es obligatorio",
"El campo prioridad con el valor X no coincide con alguna de las opciones válidas. Digite baja, media o alta"
],
"message": "Problemas de validaciones. Se presentaron errores al modificar el registro"
}</Tab> </Tabs>
Códigos de estado HTTP
| Código | Descripción |
|---|---|
| 200 | La solicitud ha sido exitosa |
| 201 | La solicitud ha tenido éxito y ha llevado a la creación de un recurso |
| 204 | La solicitud se ha completado correctamente, pero no hay contenido para devolver en la respuesta |
| 400 | El servidor no puede o no procesará la petición debido a algo que es percibido como un error del cliente |
| 401 | La solicitud requiere autenticación, pero el cliente no ha proporcionado credenciales válidas o no está autorizado para acceder al recurso |
| 403 | El servidor ha entendido la solicitud, pero se niega a cumplirla debido a que el cliente no tiene permisos para acceder al recurso |
| 404 | El recurso solicitado no se ha encontrado en el servidor |
| 500 | Internal Server Error |
| 503 | El servidor no está disponible actualmente debido a una sobrecarga o mantenimiento temporal |
¿Cómo consumir la API?
<Tabs>
<Tab name = "Java"> Request
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("text/plain");
RequestBody body = RequestBody.create(mediaType, "");
Request request = new Request.Builder()
.url("https://localhost:44305/api/v1/NotaTercero")
.method("GET", body)
.addHeader("secretkey", "{{secret key}}")
.addHeader("Authorization", "Bearer{{token}}")
.build();
Response response = client.newCall(request).execute();</Tab>
<Tab name = "C#"> Request
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://localhost:44305/api/v1/NotaTercero");
request.Headers.Add("secretkey", "{{secret key}}");
request.Headers.Add("Authorization", "Bearer{{token}}");
var content = new StringContent("", null, "text/plain");
request.Content = content;
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());</Tab>
<Tab name = "PHP"> Request
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://localhost:44305/api/v1/NotaTercero');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setConfig(array(
'follow_redirects' => TRUE
));
$request->setHeader(array(
'secretkey' => '{{secret key}}',
'Authorization' => 'Bearer {{token}}'
));
$request->setBody('');
try {
$response = $request->send();
if ($response->getStatus() == 200) {
echo $response->getBody();
}
else {
echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' .
$response->getReasonPhrase();
}
}
catch(HTTP_Request2_Exception $e) {
echo 'Error: ' . $e->getMessage();
}</Tab>
</Tabs>