{
  "service": "persona",
  "displayName": "Persona",
  "categories": [
    "Security"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Key",
      "placeholder": "persona_api_key",
      "description": "Persona API key used with the Authorization Bearer header. Create or view API keys in the Persona dashboard: https://app.withpersona.com/dashboard/api-keys.",
      "extraFields": []
    }
  ],
  "homepageUrl": "https://withpersona.com/",
  "actions": [
    {
      "id": "persona.create_inquiry",
      "service": "persona",
      "name": "create_inquiry",
      "description": "Create a Persona inquiry with an inquiry template and optional JSON prefilled attributes.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "inquiryTemplateId": {
            "type": "string",
            "minLength": 1,
            "description": "The Dynamic Flow inquiry template ID starting with itmpl_."
          },
          "referenceId": {
            "type": "string",
            "minLength": 1,
            "description": "External reference ID to attach to the inquiry."
          },
          "accountId": {
            "type": "string",
            "minLength": 1,
            "description": "Existing Persona account ID to attach to the inquiry."
          },
          "note": {
            "type": "string",
            "minLength": 1,
            "description": "Note to attach to the inquiry."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One Persona tag."
            },
            "description": "Tags to attach to the inquiry."
          },
          "fields": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Template-specific prefill fields accepted by Persona."
          },
          "relationships": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "properties": {
                "data": {
                  "anyOf": [
                    {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Persona resource ID."
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Persona resource type."
                        }
                      },
                      "additionalProperties": false,
                      "description": "A Persona JSON:API resource identifier."
                    },
                    {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "id": {
                            "type": "string",
                            "minLength": 1,
                            "description": "The Persona resource ID."
                          },
                          "type": {
                            "type": "string",
                            "minLength": 1,
                            "description": "The Persona resource type."
                          }
                        },
                        "additionalProperties": false,
                        "description": "A Persona JSON:API resource identifier."
                      },
                      "description": "Related resource identifiers."
                    }
                  ],
                  "description": "The related resource identifier or identifiers."
                }
              },
              "additionalProperties": false,
              "description": "One Persona relationship wrapper."
            },
            "description": "Additional Persona JSON:API relationships to include in the create request."
          },
          "include": {
            "type": "string",
            "minLength": 1,
            "description": "Comma-separated relationship paths to include in the response."
          },
          "fieldsToSerialize": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "minLength": 1,
              "description": "Comma-separated fields for one resource type."
            },
            "description": "Sparse fieldsets keyed by Persona resource type."
          },
          "idempotencyKey": {
            "type": "string",
            "minLength": 1,
            "description": "Idempotency key used by Persona to make the create request safe to retry."
          }
        },
        "additionalProperties": false,
        "required": [
          "inquiryTemplateId"
        ],
        "description": "Input payload for creating a Persona inquiry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "inquiry": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona inquiry ID."
              },
              "type": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona resource type."
              },
              "attributes": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "string",
                    "description": "The current Persona inquiry status."
                  },
                  "referenceId": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The external reference ID attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "note": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The note attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "tags": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "description": "One Persona inquiry tag."
                    },
                    "description": "The tags attached to the inquiry."
                  },
                  "createdAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was created."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "updatedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was last updated."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "completedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was completed."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "decisionedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was decisioned."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "fields": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "Template-specific field values returned by Persona."
                  }
                },
                "additionalProperties": true,
                "description": "Persona inquiry attributes returned by the API."
              },
              "relationships": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Persona relationships included on the inquiry."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Persona inquiry object."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "type"
            ],
            "description": "One Persona inquiry."
          },
          "included": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One included Persona resource."
            },
            "description": "Related Persona resources included in the response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Persona response payload."
          }
        },
        "additionalProperties": false,
        "description": "The normalized Persona inquiry response."
      }
    },
    {
      "id": "persona.get_inquiry",
      "service": "persona",
      "name": "get_inquiry",
      "description": "Retrieve one Persona inquiry by ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "inquiryId": {
            "type": "string",
            "minLength": 1,
            "description": "The Persona inquiry ID starting with inq_."
          },
          "include": {
            "type": "string",
            "minLength": 1,
            "description": "Comma-separated relationship paths to include in the response."
          },
          "fields": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "minLength": 1,
              "description": "Comma-separated fields for one resource type."
            },
            "description": "Sparse fieldsets keyed by Persona resource type."
          }
        },
        "additionalProperties": false,
        "required": [
          "inquiryId"
        ],
        "description": "Input payload for a Persona inquiry lookup."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "inquiry": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona inquiry ID."
              },
              "type": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona resource type."
              },
              "attributes": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "string",
                    "description": "The current Persona inquiry status."
                  },
                  "referenceId": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The external reference ID attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "note": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The note attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "tags": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "description": "One Persona inquiry tag."
                    },
                    "description": "The tags attached to the inquiry."
                  },
                  "createdAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was created."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "updatedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was last updated."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "completedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was completed."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "decisionedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was decisioned."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "fields": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "Template-specific field values returned by Persona."
                  }
                },
                "additionalProperties": true,
                "description": "Persona inquiry attributes returned by the API."
              },
              "relationships": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Persona relationships included on the inquiry."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Persona inquiry object."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "type"
            ],
            "description": "One Persona inquiry."
          },
          "included": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One included Persona resource."
            },
            "description": "Related Persona resources included in the response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Persona response payload."
          }
        },
        "additionalProperties": false,
        "description": "The normalized Persona inquiry response."
      }
    },
    {
      "id": "persona.list_inquiries",
      "service": "persona",
      "name": "list_inquiries",
      "description": "List Persona inquiries across inquiry templates with documented cursor pagination and filters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "page": {
            "type": "object",
            "properties": {
              "after": {
                "type": "string",
                "minLength": 1,
                "description": "Object ID cursor for the next page."
              },
              "before": {
                "type": "string",
                "minLength": 1,
                "description": "Object ID cursor for the previous page."
              },
              "size": {
                "type": "integer",
                "minimum": 1,
                "description": "The maximum number of objects to return."
              }
            },
            "additionalProperties": false,
            "description": "Cursor pagination options for Persona list endpoints."
          },
          "filter": {
            "type": "object",
            "properties": {
              "inquiryId": {
                "type": "string",
                "minLength": 1,
                "description": "Comma-separated inquiry IDs starting with inq_ to filter by."
              },
              "accountId": {
                "type": "string",
                "minLength": 1,
                "description": "Comma-separated account IDs starting with act_ to filter by."
              },
              "note": {
                "type": "string",
                "minLength": 1,
                "description": "Filter inquiries by note. Must be the only filter."
              },
              "referenceId": {
                "type": "string",
                "minLength": 1,
                "description": "Filter inquiries by reference ID."
              },
              "inquiryTemplateId": {
                "type": "string",
                "minLength": 1,
                "description": "Comma-separated inquiry template IDs starting with itmpl_ to filter by."
              },
              "templateId": {
                "type": "string",
                "minLength": 1,
                "description": "Comma-separated legacy template IDs starting with tmpl_ to filter by."
              },
              "status": {
                "type": "string",
                "minLength": 1,
                "description": "Comma-separated inquiry statuses to filter by."
              },
              "createdAtStart": {
                "type": "string",
                "minLength": 1,
                "description": "Filter inquiries created at or after this ISO timestamp."
              },
              "createdAtEnd": {
                "type": "string",
                "minLength": 1,
                "description": "Filter inquiries created at or before this ISO timestamp."
              }
            },
            "additionalProperties": false,
            "description": "Persona inquiry filters."
          },
          "include": {
            "type": "string",
            "minLength": 1,
            "description": "Comma-separated relationship paths to include in the response."
          },
          "fields": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "minLength": 1,
              "description": "Comma-separated fields for one resource type."
            },
            "description": "Sparse fieldsets keyed by Persona resource type."
          }
        },
        "additionalProperties": false,
        "description": "Input payload for listing Persona inquiries."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "inquiries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The Persona inquiry ID."
                },
                "type": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The Persona resource type."
                },
                "attributes": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "type": "string",
                      "description": "The current Persona inquiry status."
                    },
                    "referenceId": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The external reference ID attached to the inquiry."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "note": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The note attached to the inquiry."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "tags": {
                      "type": "array",
                      "items": {
                        "type": "string",
                        "description": "One Persona inquiry tag."
                      },
                      "description": "The tags attached to the inquiry."
                    },
                    "createdAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The timestamp when the inquiry was created."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "updatedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The timestamp when the inquiry was last updated."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "completedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The timestamp when the inquiry was completed."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "decisionedAt": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "The timestamp when the inquiry was decisioned."
                        },
                        {
                          "type": "null"
                        }
                      ]
                    },
                    "fields": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "Template-specific field values returned by Persona."
                    }
                  },
                  "additionalProperties": true,
                  "description": "Persona inquiry attributes returned by the API."
                },
                "relationships": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Persona relationships included on the inquiry."
                },
                "raw": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "The raw Persona inquiry object."
                }
              },
              "additionalProperties": true,
              "required": [
                "id",
                "type"
              ],
              "description": "One Persona inquiry."
            },
            "description": "The Persona inquiries returned by the API."
          },
          "links": {
            "type": "object",
            "properties": {
              "prev": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The previous page URL returned by Persona, or null."
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "next": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "The next page URL returned by Persona, or null."
                  },
                  {
                    "type": "null"
                  }
                ]
              }
            },
            "additionalProperties": false,
            "description": "Persona pagination links."
          },
          "included": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One included Persona resource."
            },
            "description": "Related Persona resources included in the response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Persona response payload."
          }
        },
        "additionalProperties": false,
        "description": "The normalized Persona inquiry-list response."
      }
    },
    {
      "id": "persona.update_inquiry",
      "service": "persona",
      "name": "update_inquiry",
      "description": "Update supported Persona inquiry attributes such as reference ID, note, tags, or fields.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "inquiryId": {
            "type": "string",
            "minLength": 1,
            "description": "The Persona inquiry ID starting with inq_."
          },
          "referenceId": {
            "type": "string",
            "minLength": 1,
            "description": "External reference ID to attach to the inquiry."
          },
          "note": {
            "type": "string",
            "minLength": 1,
            "description": "Note to attach to the inquiry."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string",
              "minLength": 1,
              "description": "One Persona tag."
            },
            "description": "Tags to attach to the inquiry."
          },
          "fields": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "Template-specific field updates accepted by Persona."
          },
          "include": {
            "type": "string",
            "minLength": 1,
            "description": "Comma-separated relationship paths to include in the response."
          },
          "fieldsToSerialize": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "minLength": 1,
              "description": "Comma-separated fields for one resource type."
            },
            "description": "Sparse fieldsets keyed by Persona resource type."
          },
          "idempotencyKey": {
            "type": "string",
            "minLength": 1,
            "description": "Idempotency key used by Persona to make the update request safe to retry."
          }
        },
        "additionalProperties": false,
        "required": [
          "inquiryId"
        ],
        "description": "Input payload for updating a Persona inquiry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "inquiry": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona inquiry ID."
              },
              "type": {
                "type": "string",
                "minLength": 1,
                "description": "The Persona resource type."
              },
              "attributes": {
                "type": "object",
                "properties": {
                  "status": {
                    "type": "string",
                    "description": "The current Persona inquiry status."
                  },
                  "referenceId": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The external reference ID attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "note": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The note attached to the inquiry."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "tags": {
                    "type": "array",
                    "items": {
                      "type": "string",
                      "description": "One Persona inquiry tag."
                    },
                    "description": "The tags attached to the inquiry."
                  },
                  "createdAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was created."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "updatedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was last updated."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "completedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was completed."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "decisionedAt": {
                    "anyOf": [
                      {
                        "type": "string",
                        "description": "The timestamp when the inquiry was decisioned."
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "fields": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "Template-specific field values returned by Persona."
                  }
                },
                "additionalProperties": true,
                "description": "Persona inquiry attributes returned by the API."
              },
              "relationships": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Persona relationships included on the inquiry."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Persona inquiry object."
              }
            },
            "additionalProperties": true,
            "required": [
              "id",
              "type"
            ],
            "description": "One Persona inquiry."
          },
          "included": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One included Persona resource."
            },
            "description": "Related Persona resources included in the response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Persona response payload."
          }
        },
        "additionalProperties": false,
        "description": "The normalized Persona inquiry response."
      }
    }
  ]
}
