{
  "service": "folk",
  "displayName": "folk",
  "categories": [
    "Productivity",
    "Communication"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "FOLK_API_KEY",
      "description": "Folk API key sent with the Authorization: Bearer header. Create and manage it in your workspace API settings: https://app.folk.app/apps/contacts/network/settings/api-keys"
    }
  ],
  "homepageUrl": "https://folk.app",
  "actions": [
    {
      "id": "folk.create_company",
      "service": "folk",
      "name": "create_company",
      "description": "Create one Folk company using the official companies payload fields.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "description": "The company name."
          },
          "description": {
            "type": "string",
            "maxLength": 5000,
            "description": "The company description."
          },
          "fundingRaised": {
            "anyOf": [
              {
                "type": "number",
                "description": "The funding amount as a number."
              },
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 20,
                "description": "The funding amount as a string."
              },
              {
                "type": "null"
              }
            ],
            "description": "The amount of funding raised by the company in USD."
          },
          "lastFundingDate": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 10,
                "maxLength": 10,
                "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                "format": "date"
              },
              {
                "type": "null"
              }
            ]
          },
          "industry": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 1000,
                "description": "The company industry."
              },
              {
                "type": "null"
              }
            ]
          },
          "foundationYear": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 4,
                "maxLength": 4,
                "description": "The foundation year as a string.",
                "pattern": "^\\d{4}$"
              },
              {
                "type": "integer",
                "minimum": 1000,
                "maximum": 2100,
                "description": "The foundation year as a number."
              },
              {
                "type": "null"
              }
            ],
            "description": "The company foundation year in YYYY format."
          },
          "employeeRange": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "1-10",
                  "11-50",
                  "51-200",
                  "201-500",
                  "501-1000",
                  "1001-5000",
                  "5001-10000",
                  "10000+"
                ],
                "description": "The company employee range."
              },
              {
                "type": "null"
              }
            ]
          },
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk group ID."
                }
              },
              "additionalProperties": false,
              "description": "A Folk group reference identified by group ID."
            },
            "description": "The groups to associate with the company.",
            "maxItems": 100
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One address value."
            },
            "description": "The addresses associated with the company.",
            "maxItems": 20
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One email address."
            },
            "description": "The email addresses associated with the company.",
            "maxItems": 20
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One phone number."
            },
            "description": "The phone numbers associated with the company.",
            "maxItems": 20
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One URL value."
            },
            "description": "The URLs associated with the company.",
            "maxItems": 20
          },
          "customFieldValues": {
            "type": "object",
            "additionalProperties": true,
            "description": "Custom field values grouped by Folk group ID and custom field name."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for creating a Folk company."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "company": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk company ID."
              },
              "name": {
                "type": "string",
                "description": "The company name."
              },
              "description": {
                "type": "string",
                "description": "The company description."
              },
              "fundingRaised": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The amount of funding raised by the company in USD as a string."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lastFundingDate": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "industry": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The industry returned by Folk when available."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "foundationYear": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The company foundation year returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "employeeRange": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The employee range returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the company."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the company."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the company."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the company."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the company."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk company record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when creating one Folk company."
      }
    },
    {
      "id": "folk.create_person",
      "service": "folk",
      "name": "create_person",
      "description": "Create one Folk person using the official people payload fields.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "firstName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "The person's first name."
          },
          "lastName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "The person's last name."
          },
          "fullName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "description": "The person's full name."
          },
          "description": {
            "type": "string",
            "maxLength": 5000,
            "description": "The person's description."
          },
          "birthday": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 10,
                "maxLength": 10,
                "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                "format": "date"
              },
              {
                "type": "null"
              }
            ]
          },
          "jobTitle": {
            "type": "string",
            "maxLength": 500,
            "description": "The person's job title."
          },
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk group ID."
                }
              },
              "additionalProperties": false,
              "description": "A Folk group reference identified by group ID."
            },
            "description": "The groups to associate with the person.",
            "maxItems": 100
          },
          "companies": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 500,
                      "description": "The company name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Create or link a company by name."
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk company ID."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Link an existing company by ID."
                }
              ],
              "description": "A Folk company reference identified by name or ID."
            },
            "description": "The companies to associate with the person.",
            "maxItems": 20
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One address value."
            },
            "description": "The addresses associated with the person.",
            "maxItems": 20
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One email address."
            },
            "description": "The email addresses associated with the person.",
            "maxItems": 20
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One phone number."
            },
            "description": "The phone numbers associated with the person.",
            "maxItems": 20
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One URL value."
            },
            "description": "The URLs associated with the person.",
            "maxItems": 20
          },
          "customFieldValues": {
            "type": "object",
            "additionalProperties": true,
            "description": "Custom field values grouped by Folk group ID and custom field name."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for creating a Folk person."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "person": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk person ID."
              },
              "firstName": {
                "type": "string",
                "description": "The person's first name."
              },
              "lastName": {
                "type": "string",
                "description": "The person's last name."
              },
              "fullName": {
                "type": "string",
                "description": "The person's full name."
              },
              "description": {
                "type": "string",
                "description": "The person's description."
              },
              "birthday": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "jobTitle": {
                "type": "string",
                "description": "The person's job title."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the person."
              },
              "companies": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk company ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The company name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A company reference returned on a Folk person record."
                },
                "description": "The companies associated with the person."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the person."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the person."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the person."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the person."
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              },
              "interactionMetadata": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "user": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of matching interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "additionalProperties": false,
                        "description": "Interaction counters returned by Folk."
                      },
                      "workspace": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of workspace interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "lastInteractedBy": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "minLength": 40,
                                  "maxLength": 40,
                                  "description": "The Folk user ID."
                                },
                                "fullName": {
                                  "type": "string",
                                  "description": "The full name of the workspace user."
                                },
                                "email": {
                                  "type": "string",
                                  "description": "The email address of the workspace user."
                                }
                              },
                              "additionalProperties": false,
                              "description": "A Folk workspace user."
                            },
                            "description": "The workspace users who last interacted with the contact."
                          }
                        },
                        "additionalProperties": false,
                        "description": "Workspace-level interaction metadata returned by Folk."
                      }
                    },
                    "additionalProperties": false,
                    "description": "Interaction metadata returned by Folk for a contact."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "strongestConnection": {
                "type": "object",
                "additionalProperties": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk user ID."
                    },
                    "fullName": {
                      "type": "string",
                      "description": "The full name of the workspace user."
                    },
                    "email": {
                      "type": "string",
                      "description": "The email address of the workspace user."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk workspace user."
                },
                "description": "The strongest-connection map keyed by Folk group ID."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk person record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when creating one Folk person."
      }
    },
    {
      "id": "folk.delete_company",
      "service": "folk",
      "name": "delete_company",
      "description": "Delete one Folk company by company ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk company ID."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for deleting one Folk company."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The deleted Folk company ID."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when deleting one Folk company."
      }
    },
    {
      "id": "folk.delete_person",
      "service": "folk",
      "name": "delete_person",
      "description": "Delete one Folk person by person ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "personId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk person ID."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for deleting one Folk person."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The deleted Folk person ID."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when deleting one Folk person."
      }
    },
    {
      "id": "folk.get_company",
      "service": "folk",
      "name": "get_company",
      "description": "Get one Folk company by company ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk company ID."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for fetching one Folk company."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "company": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk company ID."
              },
              "name": {
                "type": "string",
                "description": "The company name."
              },
              "description": {
                "type": "string",
                "description": "The company description."
              },
              "fundingRaised": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The amount of funding raised by the company in USD as a string."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lastFundingDate": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "industry": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The industry returned by Folk when available."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "foundationYear": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The company foundation year returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "employeeRange": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The employee range returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the company."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the company."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the company."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the company."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the company."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk company record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when fetching one Folk company."
      }
    },
    {
      "id": "folk.get_current_user",
      "service": "folk",
      "name": "get_current_user",
      "description": "Get the current Folk workspace user associated with the API key.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for fetching the current Folk user."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk user ID."
              },
              "fullName": {
                "type": "string",
                "description": "The full name of the workspace user."
              },
              "email": {
                "type": "string",
                "description": "The email address of the workspace user."
              }
            },
            "additionalProperties": false,
            "description": "A Folk workspace user."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when fetching the current Folk user."
      }
    },
    {
      "id": "folk.get_person",
      "service": "folk",
      "name": "get_person",
      "description": "Get one Folk person by person ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "personId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk person ID."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for fetching one Folk person."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "person": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk person ID."
              },
              "firstName": {
                "type": "string",
                "description": "The person's first name."
              },
              "lastName": {
                "type": "string",
                "description": "The person's last name."
              },
              "fullName": {
                "type": "string",
                "description": "The person's full name."
              },
              "description": {
                "type": "string",
                "description": "The person's description."
              },
              "birthday": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "jobTitle": {
                "type": "string",
                "description": "The person's job title."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the person."
              },
              "companies": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk company ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The company name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A company reference returned on a Folk person record."
                },
                "description": "The companies associated with the person."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the person."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the person."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the person."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the person."
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              },
              "interactionMetadata": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "user": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of matching interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "additionalProperties": false,
                        "description": "Interaction counters returned by Folk."
                      },
                      "workspace": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of workspace interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "lastInteractedBy": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "minLength": 40,
                                  "maxLength": 40,
                                  "description": "The Folk user ID."
                                },
                                "fullName": {
                                  "type": "string",
                                  "description": "The full name of the workspace user."
                                },
                                "email": {
                                  "type": "string",
                                  "description": "The email address of the workspace user."
                                }
                              },
                              "additionalProperties": false,
                              "description": "A Folk workspace user."
                            },
                            "description": "The workspace users who last interacted with the contact."
                          }
                        },
                        "additionalProperties": false,
                        "description": "Workspace-level interaction metadata returned by Folk."
                      }
                    },
                    "additionalProperties": false,
                    "description": "Interaction metadata returned by Folk for a contact."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "strongestConnection": {
                "type": "object",
                "additionalProperties": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk user ID."
                    },
                    "fullName": {
                      "type": "string",
                      "description": "The full name of the workspace user."
                    },
                    "email": {
                      "type": "string",
                      "description": "The email address of the workspace user."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk workspace user."
                },
                "description": "The strongest-connection map keyed by Folk group ID."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk person record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when fetching one Folk person."
      }
    },
    {
      "id": "folk.get_user",
      "service": "folk",
      "name": "get_user",
      "description": "Get one Folk workspace user by user ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "userId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk user ID."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for fetching one Folk user."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk user ID."
              },
              "fullName": {
                "type": "string",
                "description": "The full name of the workspace user."
              },
              "email": {
                "type": "string",
                "description": "The email address of the workspace user."
              }
            },
            "additionalProperties": false,
            "description": "A Folk workspace user."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when fetching one Folk user."
      }
    },
    {
      "id": "folk.list_companies",
      "service": "folk",
      "name": "list_companies",
      "description": "List Folk companies with official cursor pagination and the documented nested filter syntax.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The number of items to return."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "The opaque pagination cursor returned by a previous Folk response."
          },
          "combinator": {
            "type": "string",
            "enum": [
              "and",
              "or"
            ],
            "description": "The logical operator used to combine multiple Folk filters."
          },
          "filter": {
            "type": "object",
            "additionalProperties": true,
            "description": "The official Folk filter object. Use nested properties such as {\"fullName\":{\"like\":\"John\"}} or {\"groups\":{\"all\":{\"id\":[\"grp_1\",\"grp_2\"]}}}. For empty and not_empty filters, pass true."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for listing Folk companies."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "companies": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk company ID."
                },
                "name": {
                  "type": "string",
                  "description": "The company name."
                },
                "description": {
                  "type": "string",
                  "description": "The company description."
                },
                "fundingRaised": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The amount of funding raised by the company in USD as a string."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "lastFundingDate": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 10,
                      "maxLength": 10,
                      "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                      "format": "date"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "industry": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The industry returned by Folk when available."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "foundationYear": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The company foundation year returned by Folk."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "employeeRange": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The employee range returned by Folk."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "groups": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk group ID."
                      },
                      "name": {
                        "type": "string",
                        "description": "The group name."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk group."
                  },
                  "description": "The groups associated with the company."
                },
                "addresses": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One address value."
                  },
                  "description": "The addresses associated with the company."
                },
                "emails": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One email value."
                  },
                  "description": "The email addresses associated with the company."
                },
                "phones": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One phone value."
                  },
                  "description": "The phone numbers associated with the company."
                },
                "urls": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One URL value."
                  },
                  "description": "The URLs associated with the company."
                },
                "createdAt": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The ISO 8601 date-time returned by Folk when available.",
                      "format": "date-time"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "createdBy": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "minLength": 40,
                          "maxLength": 40,
                          "description": "The Folk user ID."
                        },
                        "fullName": {
                          "type": "string",
                          "description": "The full name of the workspace user."
                        },
                        "email": {
                          "type": "string",
                          "description": "The email address of the workspace user."
                        }
                      },
                      "additionalProperties": false,
                      "description": "A Folk workspace user."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "customFieldValues": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "Custom field values grouped by Folk group ID and custom field name."
                }
              },
              "additionalProperties": false,
              "description": "A normalized Folk company record."
            },
            "description": "The companies returned by Folk."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "nextLink": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The full URL of the next page when Folk returned one.",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextCursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The cursor extracted from pagination.nextLink for the next list request."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Pagination metadata returned by Folk list endpoints."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when listing Folk companies."
      }
    },
    {
      "id": "folk.list_group_custom_fields",
      "service": "folk",
      "name": "list_group_custom_fields",
      "description": "List Folk custom fields for one group and entity type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "groupId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk group ID."
          },
          "entityType": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "The entity type such as person, company, or a custom object name."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The number of items to return."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "The opaque pagination cursor returned by a previous Folk response."
          }
        },
        "additionalProperties": false,
        "required": [
          "groupId",
          "entityType"
        ],
        "description": "The input payload for listing Folk custom fields for one group."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "customFields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "description": "The custom field name."
                },
                "type": {
                  "type": "string",
                  "description": "The custom field type returned by Folk."
                },
                "options": {
                  "anyOf": [
                    {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "label": {
                            "type": "string",
                            "description": "The option label."
                          },
                          "color": {
                            "type": "string",
                            "description": "The color string returned by Folk for the option."
                          }
                        },
                        "additionalProperties": false,
                        "description": "One selectable option for a Folk group custom field."
                      },
                      "description": "The selectable options returned for select-type custom fields."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "config": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "format": {
                          "type": "string",
                          "description": "The display format returned by Folk when available."
                        },
                        "currency": {
                          "type": "string",
                          "description": "The currency code returned by Folk when available."
                        }
                      },
                      "additionalProperties": false,
                      "description": "The configuration block returned for some Folk custom fields."
                    },
                    {
                      "type": "null"
                    }
                  ]
                }
              },
              "additionalProperties": false,
              "description": "A custom field attached to one Folk group and entity type."
            },
            "description": "The custom fields returned by Folk."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "nextLink": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The full URL of the next page when Folk returned one.",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextCursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The cursor extracted from pagination.nextLink for the next list request."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Pagination metadata returned by Folk list endpoints."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when listing Folk group custom fields."
      }
    },
    {
      "id": "folk.list_groups",
      "service": "folk",
      "name": "list_groups",
      "description": "List Folk workspace groups with cursor pagination.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The number of items to return."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "The opaque pagination cursor returned by a previous Folk response."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for listing Folk groups."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk group ID."
                },
                "name": {
                  "type": "string",
                  "description": "The group name."
                }
              },
              "additionalProperties": false,
              "description": "A Folk group."
            },
            "description": "The groups returned by Folk."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "nextLink": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The full URL of the next page when Folk returned one.",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextCursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The cursor extracted from pagination.nextLink for the next list request."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Pagination metadata returned by Folk list endpoints."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when listing Folk groups."
      }
    },
    {
      "id": "folk.list_people",
      "service": "folk",
      "name": "list_people",
      "description": "List Folk people with official cursor pagination and the documented nested filter syntax.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The number of items to return."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "The opaque pagination cursor returned by a previous Folk response."
          },
          "combinator": {
            "type": "string",
            "enum": [
              "and",
              "or"
            ],
            "description": "The logical operator used to combine multiple Folk filters."
          },
          "filter": {
            "type": "object",
            "additionalProperties": true,
            "description": "The official Folk filter object. Use nested properties such as {\"fullName\":{\"like\":\"John\"}} or {\"groups\":{\"all\":{\"id\":[\"grp_1\",\"grp_2\"]}}}. For empty and not_empty filters, pass true."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for listing Folk people."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "people": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk person ID."
                },
                "firstName": {
                  "type": "string",
                  "description": "The person's first name."
                },
                "lastName": {
                  "type": "string",
                  "description": "The person's last name."
                },
                "fullName": {
                  "type": "string",
                  "description": "The person's full name."
                },
                "description": {
                  "type": "string",
                  "description": "The person's description."
                },
                "birthday": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 10,
                      "maxLength": 10,
                      "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                      "format": "date"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "jobTitle": {
                  "type": "string",
                  "description": "The person's job title."
                },
                "createdAt": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "The ISO 8601 date-time returned by Folk when available.",
                      "format": "date-time"
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "createdBy": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "minLength": 40,
                          "maxLength": 40,
                          "description": "The Folk user ID."
                        },
                        "fullName": {
                          "type": "string",
                          "description": "The full name of the workspace user."
                        },
                        "email": {
                          "type": "string",
                          "description": "The email address of the workspace user."
                        }
                      },
                      "additionalProperties": false,
                      "description": "A Folk workspace user."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "groups": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk group ID."
                      },
                      "name": {
                        "type": "string",
                        "description": "The group name."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk group."
                  },
                  "description": "The groups associated with the person."
                },
                "companies": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk company ID."
                      },
                      "name": {
                        "type": "string",
                        "description": "The company name."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A company reference returned on a Folk person record."
                  },
                  "description": "The companies associated with the person."
                },
                "addresses": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One address value."
                  },
                  "description": "The addresses associated with the person."
                },
                "emails": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One email value."
                  },
                  "description": "The email addresses associated with the person."
                },
                "phones": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One phone value."
                  },
                  "description": "The phone numbers associated with the person."
                },
                "urls": {
                  "type": "array",
                  "items": {
                    "type": "string",
                    "description": "One URL value."
                  },
                  "description": "The URLs associated with the person."
                },
                "customFieldValues": {
                  "type": "object",
                  "additionalProperties": true,
                  "description": "Custom field values grouped by Folk group ID and custom field name."
                },
                "interactionMetadata": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "user": {
                          "type": "object",
                          "properties": {
                            "approximateCount": {
                              "type": "integer",
                              "minimum": 0,
                              "description": "The approximate number of matching interactions."
                            },
                            "lastInteractedAt": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "description": "The ISO 8601 date-time returned by Folk when available.",
                                  "format": "date-time"
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            }
                          },
                          "additionalProperties": false,
                          "description": "Interaction counters returned by Folk."
                        },
                        "workspace": {
                          "type": "object",
                          "properties": {
                            "approximateCount": {
                              "type": "integer",
                              "minimum": 0,
                              "description": "The approximate number of workspace interactions."
                            },
                            "lastInteractedAt": {
                              "anyOf": [
                                {
                                  "type": "string",
                                  "description": "The ISO 8601 date-time returned by Folk when available.",
                                  "format": "date-time"
                                },
                                {
                                  "type": "null"
                                }
                              ]
                            },
                            "lastInteractedBy": {
                              "type": "array",
                              "items": {
                                "type": "object",
                                "properties": {
                                  "id": {
                                    "type": "string",
                                    "minLength": 40,
                                    "maxLength": 40,
                                    "description": "The Folk user ID."
                                  },
                                  "fullName": {
                                    "type": "string",
                                    "description": "The full name of the workspace user."
                                  },
                                  "email": {
                                    "type": "string",
                                    "description": "The email address of the workspace user."
                                  }
                                },
                                "additionalProperties": false,
                                "description": "A Folk workspace user."
                              },
                              "description": "The workspace users who last interacted with the contact."
                            }
                          },
                          "additionalProperties": false,
                          "description": "Workspace-level interaction metadata returned by Folk."
                        }
                      },
                      "additionalProperties": false,
                      "description": "Interaction metadata returned by Folk for a contact."
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "strongestConnection": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  "description": "The strongest-connection map keyed by Folk group ID."
                }
              },
              "additionalProperties": false,
              "description": "A normalized Folk person record."
            },
            "description": "The people returned by Folk."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "nextLink": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The full URL of the next page when Folk returned one.",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextCursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The cursor extracted from pagination.nextLink for the next list request."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Pagination metadata returned by Folk list endpoints."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when listing Folk people."
      }
    },
    {
      "id": "folk.list_users",
      "service": "folk",
      "name": "list_users",
      "description": "List workspace users from Folk with cursor pagination.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The number of items to return."
          },
          "cursor": {
            "type": "string",
            "minLength": 1,
            "maxLength": 128,
            "description": "The opaque pagination cursor returned by a previous Folk response."
          }
        },
        "additionalProperties": false,
        "description": "The input payload for listing Folk workspace users."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "users": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk user ID."
                },
                "fullName": {
                  "type": "string",
                  "description": "The full name of the workspace user."
                },
                "email": {
                  "type": "string",
                  "description": "The email address of the workspace user."
                }
              },
              "additionalProperties": false,
              "description": "A Folk workspace user."
            },
            "description": "The users returned by Folk."
          },
          "pagination": {
            "type": "object",
            "properties": {
              "nextLink": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The full URL of the next page when Folk returned one.",
                    "format": "uri"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "nextCursor": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The cursor extracted from pagination.nextLink for the next list request."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Pagination metadata returned by Folk list endpoints."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when listing Folk workspace users."
      }
    },
    {
      "id": "folk.update_company",
      "service": "folk",
      "name": "update_company",
      "description": "Update one Folk company by company ID using the official companies payload fields.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "companyId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk company ID."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "description": "The company name."
          },
          "description": {
            "type": "string",
            "maxLength": 5000,
            "description": "The company description."
          },
          "fundingRaised": {
            "anyOf": [
              {
                "type": "number",
                "description": "The funding amount as a number."
              },
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 20,
                "description": "The funding amount as a string."
              },
              {
                "type": "null"
              }
            ],
            "description": "The amount of funding raised by the company in USD."
          },
          "lastFundingDate": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 10,
                "maxLength": 10,
                "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                "format": "date"
              },
              {
                "type": "null"
              }
            ]
          },
          "industry": {
            "anyOf": [
              {
                "type": "string",
                "maxLength": 1000,
                "description": "The company industry."
              },
              {
                "type": "null"
              }
            ]
          },
          "foundationYear": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 4,
                "maxLength": 4,
                "description": "The foundation year as a string.",
                "pattern": "^\\d{4}$"
              },
              {
                "type": "integer",
                "minimum": 1000,
                "maximum": 2100,
                "description": "The foundation year as a number."
              },
              {
                "type": "null"
              }
            ],
            "description": "The company foundation year in YYYY format."
          },
          "employeeRange": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "1-10",
                  "11-50",
                  "51-200",
                  "201-500",
                  "501-1000",
                  "1001-5000",
                  "5001-10000",
                  "10000+"
                ],
                "description": "The company employee range."
              },
              {
                "type": "null"
              }
            ]
          },
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk group ID."
                }
              },
              "additionalProperties": false,
              "description": "A Folk group reference identified by group ID."
            },
            "description": "The groups to associate with the company.",
            "maxItems": 100
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One address value."
            },
            "description": "The addresses associated with the company.",
            "maxItems": 20
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One email address."
            },
            "description": "The email addresses associated with the company.",
            "maxItems": 20
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One phone number."
            },
            "description": "The phone numbers associated with the company.",
            "maxItems": 20
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One URL value."
            },
            "description": "The URLs associated with the company.",
            "maxItems": 20
          },
          "customFieldValues": {
            "type": "object",
            "additionalProperties": true,
            "description": "Custom field values grouped by Folk group ID and custom field name."
          }
        },
        "additionalProperties": false,
        "required": [
          "companyId"
        ],
        "description": "The input payload for updating a Folk company.",
        "anyOf": [
          {
            "required": [
              "name"
            ]
          },
          {
            "required": [
              "description"
            ]
          },
          {
            "required": [
              "fundingRaised"
            ]
          },
          {
            "required": [
              "lastFundingDate"
            ]
          },
          {
            "required": [
              "industry"
            ]
          },
          {
            "required": [
              "foundationYear"
            ]
          },
          {
            "required": [
              "employeeRange"
            ]
          },
          {
            "required": [
              "groups"
            ]
          },
          {
            "required": [
              "addresses"
            ]
          },
          {
            "required": [
              "emails"
            ]
          },
          {
            "required": [
              "phones"
            ]
          },
          {
            "required": [
              "urls"
            ]
          },
          {
            "required": [
              "customFieldValues"
            ]
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "company": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk company ID."
              },
              "name": {
                "type": "string",
                "description": "The company name."
              },
              "description": {
                "type": "string",
                "description": "The company description."
              },
              "fundingRaised": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The amount of funding raised by the company in USD as a string."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "lastFundingDate": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "industry": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The industry returned by Folk when available."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "foundationYear": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The company foundation year returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "employeeRange": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The employee range returned by Folk."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the company."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the company."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the company."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the company."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the company."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk company record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when updating one Folk company."
      }
    },
    {
      "id": "folk.update_person",
      "service": "folk",
      "name": "update_person",
      "description": "Update one Folk person by person ID using the official people payload fields.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "personId": {
            "type": "string",
            "minLength": 40,
            "maxLength": 40,
            "description": "The Folk person ID."
          },
          "firstName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "The person's first name."
          },
          "lastName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 500,
            "description": "The person's last name."
          },
          "fullName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "description": "The person's full name."
          },
          "description": {
            "type": "string",
            "maxLength": 5000,
            "description": "The person's description."
          },
          "birthday": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 10,
                "maxLength": 10,
                "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                "format": "date"
              },
              {
                "type": "null"
              }
            ]
          },
          "jobTitle": {
            "type": "string",
            "maxLength": 500,
            "description": "The person's job title."
          },
          "groups": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 40,
                  "maxLength": 40,
                  "description": "The Folk group ID."
                }
              },
              "additionalProperties": false,
              "description": "A Folk group reference identified by group ID."
            },
            "description": "The groups to associate with the person.",
            "maxItems": 100
          },
          "companies": {
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "type": "object",
                  "properties": {
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 500,
                      "description": "The company name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Create or link a company by name."
                },
                {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk company ID."
                    }
                  },
                  "additionalProperties": false,
                  "description": "Link an existing company by ID."
                }
              ],
              "description": "A Folk company reference identified by name or ID."
            },
            "description": "The companies to associate with the person.",
            "maxItems": 20
          },
          "addresses": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One address value."
            },
            "description": "The addresses associated with the person.",
            "maxItems": 20
          },
          "emails": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One email address."
            },
            "description": "The email addresses associated with the person.",
            "maxItems": 20
          },
          "phones": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One phone number."
            },
            "description": "The phone numbers associated with the person.",
            "maxItems": 20
          },
          "urls": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One URL value."
            },
            "description": "The URLs associated with the person.",
            "maxItems": 20
          },
          "customFieldValues": {
            "type": "object",
            "additionalProperties": true,
            "description": "Custom field values grouped by Folk group ID and custom field name."
          }
        },
        "additionalProperties": false,
        "required": [
          "personId"
        ],
        "description": "The input payload for updating a Folk person.",
        "anyOf": [
          {
            "required": [
              "firstName"
            ]
          },
          {
            "required": [
              "lastName"
            ]
          },
          {
            "required": [
              "fullName"
            ]
          },
          {
            "required": [
              "description"
            ]
          },
          {
            "required": [
              "birthday"
            ]
          },
          {
            "required": [
              "jobTitle"
            ]
          },
          {
            "required": [
              "groups"
            ]
          },
          {
            "required": [
              "companies"
            ]
          },
          {
            "required": [
              "addresses"
            ]
          },
          {
            "required": [
              "emails"
            ]
          },
          {
            "required": [
              "phones"
            ]
          },
          {
            "required": [
              "urls"
            ]
          },
          {
            "required": [
              "customFieldValues"
            ]
          }
        ]
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "person": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 40,
                "maxLength": 40,
                "description": "The Folk person ID."
              },
              "firstName": {
                "type": "string",
                "description": "The person's first name."
              },
              "lastName": {
                "type": "string",
                "description": "The person's last name."
              },
              "fullName": {
                "type": "string",
                "description": "The person's full name."
              },
              "description": {
                "type": "string",
                "description": "The person's description."
              },
              "birthday": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 10,
                    "maxLength": 10,
                    "description": "The ISO 8601 calendar date in YYYY-MM-DD format.",
                    "format": "date"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "jobTitle": {
                "type": "string",
                "description": "The person's job title."
              },
              "createdAt": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The ISO 8601 date-time returned by Folk when available.",
                    "format": "date-time"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "createdBy": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "id": {
                        "type": "string",
                        "minLength": 40,
                        "maxLength": 40,
                        "description": "The Folk user ID."
                      },
                      "fullName": {
                        "type": "string",
                        "description": "The full name of the workspace user."
                      },
                      "email": {
                        "type": "string",
                        "description": "The email address of the workspace user."
                      }
                    },
                    "additionalProperties": false,
                    "description": "A Folk workspace user."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "groups": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk group ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The group name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk group."
                },
                "description": "The groups associated with the person."
              },
              "companies": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk company ID."
                    },
                    "name": {
                      "type": "string",
                      "description": "The company name."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A company reference returned on a Folk person record."
                },
                "description": "The companies associated with the person."
              },
              "addresses": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One address value."
                },
                "description": "The addresses associated with the person."
              },
              "emails": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One email value."
                },
                "description": "The email addresses associated with the person."
              },
              "phones": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One phone value."
                },
                "description": "The phone numbers associated with the person."
              },
              "urls": {
                "type": "array",
                "items": {
                  "type": "string",
                  "description": "One URL value."
                },
                "description": "The URLs associated with the person."
              },
              "customFieldValues": {
                "type": "object",
                "additionalProperties": true,
                "description": "Custom field values grouped by Folk group ID and custom field name."
              },
              "interactionMetadata": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "user": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of matching interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          }
                        },
                        "additionalProperties": false,
                        "description": "Interaction counters returned by Folk."
                      },
                      "workspace": {
                        "type": "object",
                        "properties": {
                          "approximateCount": {
                            "type": "integer",
                            "minimum": 0,
                            "description": "The approximate number of workspace interactions."
                          },
                          "lastInteractedAt": {
                            "anyOf": [
                              {
                                "type": "string",
                                "description": "The ISO 8601 date-time returned by Folk when available.",
                                "format": "date-time"
                              },
                              {
                                "type": "null"
                              }
                            ]
                          },
                          "lastInteractedBy": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "id": {
                                  "type": "string",
                                  "minLength": 40,
                                  "maxLength": 40,
                                  "description": "The Folk user ID."
                                },
                                "fullName": {
                                  "type": "string",
                                  "description": "The full name of the workspace user."
                                },
                                "email": {
                                  "type": "string",
                                  "description": "The email address of the workspace user."
                                }
                              },
                              "additionalProperties": false,
                              "description": "A Folk workspace user."
                            },
                            "description": "The workspace users who last interacted with the contact."
                          }
                        },
                        "additionalProperties": false,
                        "description": "Workspace-level interaction metadata returned by Folk."
                      }
                    },
                    "additionalProperties": false,
                    "description": "Interaction metadata returned by Folk for a contact."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "strongestConnection": {
                "type": "object",
                "additionalProperties": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 40,
                      "maxLength": 40,
                      "description": "The Folk user ID."
                    },
                    "fullName": {
                      "type": "string",
                      "description": "The full name of the workspace user."
                    },
                    "email": {
                      "type": "string",
                      "description": "The email address of the workspace user."
                    }
                  },
                  "additionalProperties": false,
                  "description": "A Folk workspace user."
                },
                "description": "The strongest-connection map keyed by Folk group ID."
              }
            },
            "additionalProperties": false,
            "description": "A normalized Folk person record."
          }
        },
        "additionalProperties": false,
        "description": "The response returned when updating one Folk person."
      }
    }
  ]
}
