Я не уверен, отностися ли это полностью к SuiteCRM или к JSON API. Вероятно, это что-то посередине.
Есть ресурс с название Lead, чья структура целиком доступна, если выполнить такой запрос:
GET {{crm_base_url}}/api/v8/modules/Leads/meta/attributes
Это дает такой ответ:
{
"meta": {
"Leads": {
"attributes": {
"id": {
"name": "id",
"vname": "LBL_ID",
"type": "id",
"required": true,
"reportable": true,
"comment": "Unique identifier",
"inline_edit": false
},
"first_name": {
"name": "first_name",
"vname": "LBL_FIRST_NAME",
"type": "varchar",
"len": "100",
"unified_search": true,
"full_text_search": {
"boost": 3
},
"comment": "First name of the contact",
"merge_filter": "selected"
},
...
Я хочу использовать одну из JSON API библиотек. Допустим, Java реализацию. Тогда я должен написать такой код:
@JsonApiResource(type = "Leads")
public class Lead {
@JsonApiId
private UUID id;
@JsonProperty("first_name")
private String firstName;
...
Как я могу избежать ручной работы и сгенерировать код таких классов автоматически?
Неважно какой язык программирования использовать, в результате должен получится класс с полями.