API de módulos personalizados  

La API de módulos personalizados le permite agregar, editar y eliminar registros desde scripts o clientes externos mediante la API REST.

Este documento enumera las operaciones compatibles, junto con la URL esperada, los datos de entrada y ejemplos de respuestas.

Uso de la API 

Para demostrar las operaciones de la API, este documento utiliza la siguiente configuración:

  • Módulo personalizado (pestaña web): Book
  • Nombre plural de la pestaña web: Books
  • Campos: Title, Author, Category (una lista de selección con tres opciones), Attachments y Description.
 
Referencias   
custom_module_api_plural_name
field_name


Obtenga más información sobre los módulos personalizados.

API

Obtener una lista de registros de un módulo personalizado

Obtener un solo registro

Agregar un registro

Editar un registro

Valores permitidos de los campos de lista de selección/multiselección

Mover un registro a la papelera

Obtener registros eliminados

Eliminar un registro

Restaurar un registro eliminado 

Obtener una lista de registros de un módulo personalizado 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

GETapi/v3/<custom_module_api_plural_name>api/v3/cm_books

{

"list_info": {

"row_count": "10",

"start_index": 1,

"get_total_count": true,

"search_criteria": {

"field": "author",

"value": "author",

"condition": "contains",

"logical_operator": "AND"

},

"sort_field": "author",

"sort_order": "asc"

  }

}

{

  "cm_books": [

    {

      "created_time": {

        "display_value": "17/04/2023 04:26 PM",

        "value": "1681729003728"

      },

      "author": "test author",

        "category": {

          "name": "Novel",

          "id": "3634"

        }

      },

      "description": "<div>test description</div>",

      "id": "301",

      "title": "test",

      "created_by": {

        "email_id": "demo@test.com",

        "phone": "987654321",

        "name": "Demo",

        "mobile": "987654321",

        "profile_pic": {

          "content-url": "/images/default-profile-pic2.svg"

        },

        "is_vipuser": false,

        "id": "10",

        "department": {

          "site": null,

          "name": "Engineering",

          "id": 2

        }

      }

    }

  ],

  "response_status": [

    {

      "status_code": 2000,

      "status": "success"

    }

  ],

  "list_info": {

    "has_more_rows": false,

    "start_index": 1,

    "sort_field": "author",

    "total_count": 1,

    "sort_order": "asc",

    "search_criteria": {

      "condition": "contains",

      "field": "author",

      "logical_operator": "AND",

      "value": "auth"

    },

    "get_total_count": "true",

    "row_count": 1

  }

}

 

Obtener un solo registro 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

GETapi/v3/<custom_module_api_plural_name>/<id>api/v3/cm_books/301-

{

"response_status": {

"status_code": 2000,

    "status": "success"

  },

  "cm_book": {

    "created_time": {

      "display_value": "17/04/2023 04:26 PM",

      "value": "1681729003728"

    },

    "author": "test author",

"category": {

        "name": "Novel",

        "id": "3634"

      }

    },

    "attachments": [],

    "description": "<div>test description</div>",

    "id": "301",

    "title": "test",

    "created_by": {

      "email_id": "demo@test.com",

      "phone": "987654321",

      "name": "Demo",

      "mobile": "987654321",

      "profile_pic": {

        "content-url": "/images/default-profile-pic2.svg"

      },

      "is_vipuser": false,

      "id": "10",

      "department": {

        "site": null,

        "name": "Engineering",

        "id": 2

      }

    }

  }

}

 

 Agregar un registro 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

POSTapi/v3/<custom_module_api_plural_name>api/v3/cm_books

{

  "cm_book": {

    "title": "Harry Potter",

    "description": "<div>description about harry potter</div>",

    "attachments": [],

    "author": "J.K Rowling",

"category": {

        "id": "3636",

        "name": "Fantasy"

      }

    }

  }

}

{

"response_status": {

"status_code": 2000,

    "status": "success"

  },

  "cm_book": {

"created_time": {

      "display_value": "17/04/2023 07:20 PM",

      "value": "1681739443587"

    },

"author": "J.K Rowling",

"category": {

        "name": "Fantasy",

        "id": "3636"

      }

    },

    "attachments": [],

    "description": "<div>description about harry potter</div>",

    "id": "302",

    "title": "Harry Potter",

    "created_by": {

      "email_id": "demo@test.com",

      "phone": "987654321",

      "name": "Demo",

      "mobile": "987654321",

      "profile_pic": {

        "content-url": "/images/default-profile-pic2.svg"

      },

      "is_vipuser": false,

      "id": "10",

      "department": {

        "site": null,

        "name": "Engineering",

        "id": 2

      }

    }

  }

}

 

 Editar un registro 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

PUTapi/v3/<custom_module_api_plural_name>/<id>api/v3/cm_books/301

{

  "cm_book": {

    "title": "test1",  "category": {

        "id": "3635",

        "name": "Classics"

      }

    }

  }

}

{

"response_status": { "status_code": 2000,

    "status": "success"

  },

  "cm_book": {

"created_time": {  "display_value": "17/04/2023 04:26 PM",

      "value": "1681729003728"

    },

    "author": "test author",

      "category": {

        "name": "Classics",

        "id": "3635"

      }

    },

"attachments": [],    "description": "<div>test description</div>",

    "id": "301",

    "title": "test1",

    "created_by": {

      "email_id": "demo@test.com",

      "phone": "987654321",

      "name": "Demo",

      "mobile": "987654321",

      "profile_pic": {

        "content-url": "/images/default-profile-pic2.svg"

      },

      "is_vipuser": false,

      "id": "10",

      "department": {

        "site": null,

        "name": "Engineering",

        "id": 2

      }

    }

  }

}

 

 Valores permitidos de los campos de lista de selección/multiselección 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

-api/v3/<custom_module_api_plural_name>/<field_name>api/v3/cm_books/category-

{

  "response_status": {

    "status_code": 2000,

    "status": "success"

  },

"category": [

    {

      "name": "Novel",

      "id": "3634"

    },

    {

      "name": "Classics",

      "id": "3635"

    },

    {

      "name": "Fantasy",

      "id": "3636"

    },

    {

      "name": "Humor and satire.",

      "id": "3637"

    }

  ],

  "list_info": {

    "has_more_rows": false,

    "start_index": 1,

    "sort_order": "asc",

    "row_count": 4

  }

}

 

Mover un registro a la papelera  

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

 api/v3/<custom_module_api_plural_name>/<id>/_move_to_trashapi/v3/cm_books/301/_move_to_trash-

{

"response_status": {

"status_code": 2000,

    "status": "success"

  },

  "cm_book": {

"created_time": {  "display_value": "17/04/2023 04:26 PM",

      "value": "1681729003728"

    },

    "author": "test author",

  "category": {

        "name": "Classics",

        "id": "3635"

      }

    },

"attachments": [],

    "description": "<div>test description</div>",

    "id": "301",

    "title": "test1",

  "created_by": {

      "email_id": "demo@test.com",

      "phone": "987654321",

      "name": "Demo",

      "mobile": "987654321",

      "profile_pic": {

        "content-url": "/images/default-profile-pic2.svg"

      },

      "is_vipuser": false,

      "id": "10",

      "department": {

        "site": null,

        "name": "Engineering",

        "id": 2

      }

    }

    }

}

  

Obtener registros eliminados  

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

GETapi/v3/<custom_module_api_plural_name>api/v3/cm_books

{

  "list_info": {

    "start_index": 1,

    "row_count": "10",

    "sort_field": "author",

    "sort_order": "asc",

    "filter_by": {

      "name": "trash"

    },

    "get_total_count": true

  }

}

{

  "cm_books": [

    {

      "created_time": {

        "display_value": "17/04/2023 04:26 PM",

        "value": "1681729003728"

      },

"author": "test author",

        "category": {

          "name": "Classics",

          "id": "3635"

        }

      },

      "description": "<div>test description</div>",

      "id": "301",

      "title": "test1",

      "created_by": {

        "email_id": "demo@test.com",

        "phone": "987654321",

        "name": "Demo",

        "mobile": "987654321",

        "profile_pic": {

          "content-url": "/images/default-profile-pic2.svg"

        },

        "is_vipuser": false,

        "id": "10",

        "department": {

          "site": null,

          "name": "Engineering",

          "id": 2

        }

      }

    }

  ],

  "response_status": [

    {   "status_code": 2000,

      "status": "success"

    }

  ],

  "list_info": {

    "has_more_rows": false,

    "start_index": 1,

    "sort_field": "author",

    "total_count": 1,

    "filter_by": {

      "name": "trash"

    },

    "sort_order": "asc",

    "get_total_count": "true",

    "row_count": 1

  }

}

 

 Eliminar un registro 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

DELETEapi/v3/<custom_module_api_plural_name> /<id>api/v3/cm_books/301-

{

"response_status":

{

"status_code":2000,

"status":"success"}

}

 

Restaurar un registro eliminado 

Método

Sintaxis de URL

URL

input_data

Respuesta de ejemplo

PUTapi/v3/<custom_module_api_plural_name> /<id>/_restore_from_trashapi/v3/cm_books/301/_restore_from_trash-

{

  "response_status": {

    "status_code": 2000,

    "status": "success"

  },

  "cm_book": {

    "created_time": {

      "display_value": "17/04/2023 04:26 PM",

      "value": "1681729003728"

    },

    "author": "test author",

      "category": {

        "name": "Classics",

        "id": "3635"

      }

    },

    "attachments": [],

    "description": "<div>test description</div>",

    "id": "301",

    "title": "test1",

    "created_by": {

      "email_id": "demo@test.com",

      "phone": "987654321",

      "name": "Demo",

      "mobile": "987654321",

      "profile_pic": {

        "content-url": "/images/default-profile-pic2.svg"

      },

      "is_vipuser": false,

      "id": "10",

      "department": {

        "site": null,

        "name": "Engineering",

        "id": 2

      }

    }

  }

}

 

Comentarios

 

 

Con la confianza de las mejores organizaciones del mundo

Brindemos un mejor soporte juntos, más rápido y más fácil