AgencyBloc MCP by usefulapi

Read and update AgencyBloc individuals, groups, policies and agents; log activities and notes.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
96%
Integridad del esquema
87%
Calidad de los nombres
79%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (2)

  • LOWTool 'agencybloc_get_policy' description lacks action verben agencybloc_get_policy
  • LOWTool 'agencybloc_search_leads_by_phone' name length outside 3-30 rangeen agencybloc_search_leads_by_phone

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~6,730Tokens (definiciones de herramientas)
~2.6 KBTamaño de respuesta típico
Impacto significativo en la atención (5.26% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "agencybloc": {
      "url": "https://agencybloc.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://agencybloc.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (22)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢agencybloc_search_individuals(first_name, last_name, email, phone, group_id, ...)

Search individuals (clients and contacts) in AgencyBloc. All filters are optional and combine; with none you get the first records. Returns id, name, email, birth date, phones and last-updated time (national ids such as SSN are never returned). Use updated_since to find recently changed people. POST individuals/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "phone": {
      "description": "Matches the home, cell or business phone.",
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "group_id": {
      "description": "Only members of this group.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "updated_since": {
      "description": "Only records updated on/after this (inclusive); results then run oldest update first.",
      "type": "string"
    },
    "updated_before": {
      "description": "Only records updated before this (exclusive).",
      "type": "string"
    },
    "limit": {
      "description": "Most records to return, 1-500 (default 50). There is no paging: narrow with filters if more may exist.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_individual(individual_id, include_activities)

One individual by id, with addresses, policies and custom fields (and activities when include_activities is true). National ids are removed. POST individuals/detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "individual_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "include_activities": {
      "description": "Also return the activities (default false).",
      "type": "boolean"
    }
  },
  "required": [
    "individual_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_search_groups(group_name, type, business_phone, updated_since, limit)

Search groups (employer / business accounts) in AgencyBloc by name, type or phone. Returns id, name, type and phone. POST groups/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "group_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "type": {
      "description": "The group type as configured in the account.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "business_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "updated_since": {
      "description": "Only groups modified on/after this date.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "limit": {
      "description": "Most records to return, 1-500 (default 50). There is no paging: narrow with filters if more may exist.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_group(group_id, include_activities)

One group by id, with addresses, policies and custom fields (and activities when include_activities is true). POST groups/detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "group_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "include_activities": {
      "description": "Also return the activities (default false).",
      "type": "boolean"
    }
  },
  "required": [
    "group_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_search_policies(policy_number, coverage_type, carrier, entity_id, entity_type, ...)

Search policies by number, coverage type, carrier, holder, servicing agent, application date or last update. Returns id, holder, policy number, carrier, status, coverage type, effective and renewal dates. Use submitted_after/updated_since for recent business. POST policies/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "policy_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "coverage_type": {
      "description": "Coverage type as configured in the account (e.g. Medicare Supplement).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "carrier": {
      "description": "Carrier name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "entity_id": {
      "description": "Holder id (group or individual id); give entity_type too.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "entity_type": {
      "description": "Whether entity_id is a Group or an Individual.",
      "type": "string",
      "enum": [
        "Group",
        "Individual"
      ]
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "submitted_after": {
      "description": "Application submitted on/after this date.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "submitted_before": {
      "description": "Application submitted on/before this date (AgencyBloc includes the date itself).",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "updated_since": {
      "description": "Only records updated on/after this (inclusive); results then run oldest update first.",
      "type": "string"
    },
    "updated_before": {
      "description": "Only records updated before this (exclusive).",
      "type": "string"
    },
    "limit": {
      "description": "Most records to return, 1-500 (default 50). There is no paging: narrow with filters if more may exist.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_policy(policy_id)

One policy by id: holder, agent, carrier, status, dates, premium, coverages and custom fields. POST policies/detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "policy_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "policy_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_search_agents(first_name, last_name, email, phone, limit)

Search agents (producers) by name, email or phone. Returns id, name, email and phones. POST agents/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "phone": {
      "description": "Matches the home, cell or business phone.",
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "limit": {
      "description": "Most records to return, 1-500 (default 50). There is no paging: narrow with filters if more may exist.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_agent(agent_id, include_activities)

One agent by id, with agencies, addresses and custom fields (and activities when include_activities is true). POST agents/detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "include_activities": {
      "description": "Also return the activities (default false).",
      "type": "boolean"
    }
  },
  "required": [
    "agent_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_search_carriers(carrier_name, phone, limit)

Search insurance carriers by name or phone. Returns id, name, abbreviation and phones. POST carriers/search.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "carrier_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "phone": {
      "description": "Matches any carrier phone.",
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "limit": {
      "description": "Most records to return, 1-500 (default 50). There is no paging: narrow with filters if more may exist.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_list_activities(entity_id, entity_type)

All activities (tasks, calls, renewals) logged on one group, individual, agent, carrier or lead: date, subject, notes, status, type, method, priority and follow-up. There is no paging. POST activities/list.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Id of the record."
    },
    "entity_type": {
      "type": "string",
      "enum": [
        "Group",
        "Individual",
        "Agent",
        "Carrier",
        "Lead"
      ]
    }
  },
  "required": [
    "entity_id",
    "entity_type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_activities(activity_ids)

Activities by id (1-50 ids), e.g. the ids shown on a policy or individual. POST activity/list.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "activity_ids": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "integer",
        "exclusiveMinimum": 0,
        "maximum": 9007199254740991
      }
    }
  },
  "required": [
    "activity_ids"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_list_notes(entity_id, entity_type)

Notes (subject, body, author, dates, pinned flag, attachment names) on one agent, group, individual or policy, newest change first. There is no paging. POST notes/list.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Id of the record."
    },
    "entity_type": {
      "type": "string",
      "enum": [
        "Agent",
        "Group",
        "Individual",
        "Policy"
      ]
    }
  },
  "required": [
    "entity_id",
    "entity_type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_search_leads_by_phone(phone)

Find Sales Enablement records (leads) by phone number; the search is by phone only. Only accounts with the Sales Enablement module have them. POST salesEnablement/leads/searchphone.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40,
      "description": "Phone number to look up."
    }
  },
  "required": [
    "phone"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢agencybloc_get_lead(record_id)

One Sales Enablement record (lead) by record id. POST salesEnablement/Leads/detail.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "record_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "required": [
    "record_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡agencybloc_create_individual(first_name, last_name, middle_initial, email, birth_date, ...)

WRITE: create a new individual (client or contact) in AgencyBloc. Needs first and last name; everything else is optional. It does not check for duplicates: search first. Returns the new individualID. POST individuals/create.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "middle_initial": {
      "type": "string",
      "minLength": 1,
      "maxLength": 5
    },
    "email": {
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "birth_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "gender": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20
    },
    "status": {
      "description": "Status as configured in the account; an unknown value is created.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "type": {
      "description": "Type as configured in the account; an unknown value is created.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "lead_source": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "tags": {
      "description": "Tags (replaces existing tags on update; an empty string clears them).",
      "type": "string",
      "maxLength": 500
    },
    "group_id": {
      "description": "Group the individual belongs to.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "home_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "cell_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "business_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    },
    "address_type": {
      "description": "Address label (e.g. Home, Business, Mailing); used with the address fields below.",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "street1": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "street2": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "state": {
      "description": "Two-letter state abbreviation.",
      "type": "string",
      "minLength": 1,
      "maxLength": 2
    },
    "zip": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20
    }
  },
  "required": [
    "first_name",
    "last_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴agencybloc_update_individual(individual_id, middle_initial, email, birth_date, gender, ...)

WRITE: change fields of an existing individual; fields you leave out are not sent. Tags are replaced (empty string clears them). Addresses are not changed here. Returns the individualID. POST individuals/update.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "individual_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "middle_initial": {
      "type": "string",
      "minLength": 1,
      "maxLength": 5
    },
    "email": {
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "birth_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "gender": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20
    },
    "status": {
      "description": "Status as configured in the account; an unknown value is created.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "type": {
      "description": "Type as configured in the account; an unknown value is created.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "lead_source": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "tags": {
      "description": "Tags (replaces existing tags on update; an empty string clears them).",
      "type": "string",
      "maxLength": 500
    },
    "group_id": {
      "description": "Group the individual belongs to.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "home_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "cell_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "business_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "individual_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡agencybloc_create_group(group_name, status, dba, type, industry, ...)

WRITE: create a new group (employer / business account) in AgencyBloc. It does not check for duplicates: search first. Returns the new groupID. POST groups/create.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "group_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "status": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "dba": {
      "description": "Doing-business-as name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "type": {
      "description": "Group type as configured in the account.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "industry": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "employees": {
      "description": "Number of employees.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    },
    "description": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "website": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "account_manager": {
      "description": "A user id or the exact user name in AgencyBloc.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "business_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    },
    "address_type": {
      "description": "Address label (e.g. Home, Business, Mailing); used with the address fields below.",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "street1": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "street2": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "city": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "state": {
      "description": "Two-letter state abbreviation.",
      "type": "string",
      "minLength": 1,
      "maxLength": 2
    },
    "zip": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20
    }
  },
  "required": [
    "group_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴agencybloc_update_group(group_id, group_name, dba, type, industry, ...)

WRITE: change fields of an existing group (including its name); fields you leave out are not sent. Returns the groupID. POST groups/update.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "group_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "group_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "dba": {
      "description": "Doing-business-as name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "type": {
      "description": "Group type as configured in the account.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "industry": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "employees": {
      "description": "Number of employees.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    },
    "description": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "website": {
      "type": "string",
      "minLength": 1,
      "maxLength": 300
    },
    "account_manager": {
      "description": "A user id or the exact user name in AgencyBloc.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "business_phone": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "group_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡agencybloc_create_policy(entity_id, entity_type, coverage_type, status, carrier, ...)

WRITE: create a policy on an existing group or individual. Needs the holder (entity_id + entity_type), coverage type, status and the carrier's full name; unknown coverage types / statuses are created in the account. Returns the new policyID. POST policies/create.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "The groupID or individualID that holds the policy."
    },
    "entity_type": {
      "type": "string",
      "enum": [
        "Group",
        "Individual"
      ]
    },
    "coverage_type": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "status": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "carrier": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The carrier's full name."
    },
    "policy_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "app_submit_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "effective_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "renewal_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "term_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "premium": {
      "description": "Premium amount.",
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "pay_frequency": {
      "description": "Payment frequency as configured in the account (e.g. Monthly).",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "lives": {
      "description": "Number of covered lives.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "notes": {
      "description": "The policy's own notes field.",
      "type": "string",
      "minLength": 1,
      "maxLength": 4000
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "entity_id",
    "entity_type",
    "coverage_type",
    "status",
    "carrier"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴agencybloc_update_policy(policy_id, coverage_type, status, carrier, policy_number, ...)

WRITE: change fields of an existing policy (status, carrier, dates, premium ...); fields you leave out are not sent. Returns the policyID. POST policies/update.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "policy_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "coverage_type": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "status": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "carrier": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "policy_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "app_submit_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "effective_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "renewal_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "term_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "premium": {
      "description": "Premium amount.",
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000
    },
    "pay_frequency": {
      "description": "Payment frequency as configured in the account (e.g. Monthly).",
      "type": "string",
      "minLength": 1,
      "maxLength": 50
    },
    "lives": {
      "description": "Number of covered lives.",
      "type": "integer",
      "minimum": 0,
      "maximum": 10000000
    },
    "servicing_agent_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "notes": {
      "description": "The policy's own notes field.",
      "type": "string",
      "minLength": 1,
      "maxLength": 4000
    },
    "custom_fields": {
      "description": "Custom field values keyed by the exact custom field NAME configured in AgencyBloc (sent as custom_<name>). Separate several values of a checkbox-list field with ||.",
      "type": "object",
      "propertyNames": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "additionalProperties": {
        "type": "string",
        "maxLength": 2000
      }
    }
  },
  "required": [
    "policy_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡agencybloc_create_activity(entity_id, entity_type, subject, notes, status, ...)

WRITE: log an activity (call, task, renewal reminder) on a group, individual, agent, carrier or lead. Status, type, method and priority are the text values of the account's dropdowns (My Agency Settings > Data Administration); unknown values are created. When the status is not Complete the activity is a follow-up: give follow_up_user_id and follow_up_date (and start/end times), and AgencyBloc assigns it to that user. Nothing is sent to the customer. Activities cannot be edited or deleted through the API. Returns the new activityID. POST activities/create.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Id of the record."
    },
    "entity_type": {
      "type": "string",
      "enum": [
        "Group",
        "Individual",
        "Agent",
        "Carrier",
        "Lead"
      ]
    },
    "subject": {
      "type": "string",
      "minLength": 1,
      "maxLength": 250
    },
    "notes": {
      "type": "string",
      "minLength": 1,
      "maxLength": 8000,
      "description": "The activity text."
    },
    "status": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "e.g. Complete or In Progress."
    },
    "type": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Activity type, e.g. Renewal."
    },
    "method": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Activity method, e.g. Phone or Email."
    },
    "priority": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "e.g. Low, Medium or High."
    },
    "activity_date": {
      "description": "Defaults to today.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "related_policy_id": {
      "description": "A policy of this group or individual.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "follow_up_user_id": {
      "description": "AgencyBloc user the follow-up is assigned to.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "follow_up_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "A date, yyyy-mm-dd."
    },
    "follow_up_all_day": {
      "type": "boolean"
    },
    "follow_up_start_time": {
      "description": "24-hour HH:MM or HH:MM:SS.",
      "type": "string"
    },
    "follow_up_end_time": {
      "description": "24-hour HH:MM or HH:MM:SS.",
      "type": "string"
    }
  },
  "required": [
    "entity_id",
    "entity_type",
    "subject",
    "notes",
    "status",
    "type",
    "method",
    "priority"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴agencybloc_create_note(entity_id, entity_type, subject, body, pinned)

WRITE: add one note (subject + body) to an agent, group, individual or policy. AgencyBloc never allows notes to be edited or deleted through the API (audit rule), so the note is permanent. Pinning a note unpins the previously pinned one. Returns the new note id. POST notes/create.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "entity_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "Id of the record."
    },
    "entity_type": {
      "type": "string",
      "enum": [
        "Agent",
        "Group",
        "Individual",
        "Policy"
      ]
    },
    "subject": {
      "type": "string",
      "minLength": 1,
      "maxLength": 250
    },
    "body": {
      "type": "string",
      "minLength": 1,
      "maxLength": 8000
    },
    "pinned": {
      "description": "Pin the note (unpins any other pinned note). Default false.",
      "type": "boolean"
    }
  },
  "required": [
    "entity_id",
    "entity_type",
    "subject",
    "body"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada22 herramientas