{
  "service": "flagsmith",
  "displayName": "Flagsmith",
  "categories": [
    "Developer Tools"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "Environment Key",
      "placeholder": "flagsmith_environment_key",
      "description": "Flagsmith Environment Key sent with the X-Environment-Key header for the Flags API. Copy it from your Flagsmith environment settings: https://docs.flagsmith.com/sdk-api/flagsmith-api."
    }
  ],
  "homepageUrl": "https://www.flagsmith.com",
  "actions": [
    {
      "id": "flagsmith.get_feature_flag",
      "service": "flagsmith",
      "name": "get_feature_flag",
      "description": "Retrieve one feature flag by feature name from the connected environment.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "feature": {
            "type": "string",
            "minLength": 1,
            "description": "The Flagsmith feature name."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for retrieving one Flagsmith flag."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "flag": {
            "type": "object",
            "properties": {
              "feature": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "description": "The Flagsmith feature id."
                  },
                  "name": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The Flagsmith feature name."
                  },
                  "type": {
                    "type": "string",
                    "minLength": 1,
                    "description": "The Flagsmith feature type."
                  }
                },
                "additionalProperties": true,
                "required": [
                  "name"
                ],
                "description": "The Flagsmith feature metadata."
              },
              "enabled": {
                "type": "boolean",
                "description": "Whether the feature is enabled."
              },
              "feature_state_value": {
                "anyOf": [
                  {
                    "type": "string",
                    "description": "A string feature value."
                  },
                  {
                    "type": "number",
                    "description": "A numeric feature value."
                  },
                  {
                    "type": "boolean",
                    "description": "A boolean feature value."
                  },
                  {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "An object feature value."
                  },
                  {
                    "type": "array",
                    "items": {
                      "description": "One array feature value."
                    },
                    "description": "An array feature value."
                  },
                  {
                    "type": "null",
                    "description": "A null feature value."
                  }
                ],
                "description": "The value attached to a Flagsmith feature state."
              },
              "featurestate_uuid": {
                "type": "string",
                "minLength": 1,
                "description": "The Flagsmith feature state UUID."
              },
              "multivariate_feature_state_values": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "One multivariate feature value returned by Flagsmith."
                },
                "description": "Multivariate feature values returned by Flagsmith."
              },
              "metadata": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Flagsmith metadata attached to this feature state."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Flagsmith feature state object."
              }
            },
            "additionalProperties": true,
            "description": "A Flagsmith feature flag state."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Flagsmith feature state object."
          }
        },
        "additionalProperties": false,
        "description": "The Flagsmith single flag response."
      }
    },
    {
      "id": "flagsmith.get_identity_flags",
      "service": "flagsmith",
      "name": "get_identity_flags",
      "description": "Retrieve evaluated flags and traits for a Flagsmith identity.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "minLength": 1,
            "description": "The Flagsmith identity identifier."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for retrieving Flagsmith identity flags."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "identity": {
            "type": "object",
            "properties": {
              "identifier": {
                "type": "string",
                "minLength": 1,
                "description": "The Flagsmith identity identifier."
              },
              "identity_uuid": {
                "type": "string",
                "minLength": 1,
                "description": "The Flagsmith identity UUID."
              },
              "django_id": {
                "type": "integer",
                "description": "The Flagsmith identity database id."
              },
              "flags": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "feature": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "description": "The Flagsmith feature id."
                        },
                        "name": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Flagsmith feature name."
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Flagsmith feature type."
                        }
                      },
                      "additionalProperties": true,
                      "required": [
                        "name"
                      ],
                      "description": "The Flagsmith feature metadata."
                    },
                    "enabled": {
                      "type": "boolean",
                      "description": "Whether the feature is enabled."
                    },
                    "feature_state_value": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "A string feature value."
                        },
                        {
                          "type": "number",
                          "description": "A numeric feature value."
                        },
                        {
                          "type": "boolean",
                          "description": "A boolean feature value."
                        },
                        {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": true,
                          "description": "An object feature value."
                        },
                        {
                          "type": "array",
                          "items": {
                            "description": "One array feature value."
                          },
                          "description": "An array feature value."
                        },
                        {
                          "type": "null",
                          "description": "A null feature value."
                        }
                      ],
                      "description": "The value attached to a Flagsmith feature state."
                    },
                    "featurestate_uuid": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith feature state UUID."
                    },
                    "multivariate_feature_state_values": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {},
                        "additionalProperties": true,
                        "description": "One multivariate feature value returned by Flagsmith."
                      },
                      "description": "Multivariate feature values returned by Flagsmith."
                    },
                    "metadata": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "Flagsmith metadata attached to this feature state."
                    },
                    "raw": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The raw Flagsmith feature state object."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Flagsmith feature flag state."
                },
                "description": "Flags evaluated for this identity."
              },
              "traits": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "trait_key": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith trait key."
                    },
                    "trait_value": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "A string trait value."
                        },
                        {
                          "type": "number",
                          "description": "A numeric trait value."
                        },
                        {
                          "type": "boolean",
                          "description": "A boolean trait value."
                        },
                        {
                          "type": "null",
                          "description": "A null trait value."
                        }
                      ],
                      "description": "A Flagsmith trait value."
                    },
                    "raw": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The raw Flagsmith trait object."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Flagsmith identity trait returned by the API."
                },
                "description": "Traits returned for this identity."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Flagsmith identity response."
              }
            },
            "additionalProperties": true,
            "description": "A Flagsmith identity response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Flagsmith identity response."
          }
        },
        "additionalProperties": false,
        "description": "The Flagsmith identity result."
      }
    },
    {
      "id": "flagsmith.identify_identity",
      "service": "flagsmith",
      "name": "identify_identity",
      "description": "Identify a Flagsmith user, optionally set traits, and return evaluated flags.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "identifier": {
            "type": "string",
            "minLength": 1,
            "description": "The Flagsmith identity identifier."
          },
          "traits": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "trait_key": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The Flagsmith trait key."
                },
                "trait_value": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "A string trait value."
                    },
                    {
                      "type": "number",
                      "description": "A numeric trait value."
                    },
                    {
                      "type": "boolean",
                      "description": "A boolean trait value."
                    },
                    {
                      "type": "null",
                      "description": "A null trait value."
                    }
                  ],
                  "description": "A Flagsmith trait value."
                }
              },
              "additionalProperties": false,
              "description": "A Flagsmith identity trait to set."
            },
            "description": "Traits to set for this identity."
          }
        },
        "additionalProperties": false,
        "required": [
          "identifier"
        ],
        "description": "Input parameters for identifying a Flagsmith identity and setting traits."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "identity": {
            "type": "object",
            "properties": {
              "identifier": {
                "type": "string",
                "minLength": 1,
                "description": "The Flagsmith identity identifier."
              },
              "identity_uuid": {
                "type": "string",
                "minLength": 1,
                "description": "The Flagsmith identity UUID."
              },
              "django_id": {
                "type": "integer",
                "description": "The Flagsmith identity database id."
              },
              "flags": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "feature": {
                      "type": "object",
                      "properties": {
                        "id": {
                          "type": "integer",
                          "description": "The Flagsmith feature id."
                        },
                        "name": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Flagsmith feature name."
                        },
                        "type": {
                          "type": "string",
                          "minLength": 1,
                          "description": "The Flagsmith feature type."
                        }
                      },
                      "additionalProperties": true,
                      "required": [
                        "name"
                      ],
                      "description": "The Flagsmith feature metadata."
                    },
                    "enabled": {
                      "type": "boolean",
                      "description": "Whether the feature is enabled."
                    },
                    "feature_state_value": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "A string feature value."
                        },
                        {
                          "type": "number",
                          "description": "A numeric feature value."
                        },
                        {
                          "type": "boolean",
                          "description": "A boolean feature value."
                        },
                        {
                          "type": "object",
                          "properties": {},
                          "additionalProperties": true,
                          "description": "An object feature value."
                        },
                        {
                          "type": "array",
                          "items": {
                            "description": "One array feature value."
                          },
                          "description": "An array feature value."
                        },
                        {
                          "type": "null",
                          "description": "A null feature value."
                        }
                      ],
                      "description": "The value attached to a Flagsmith feature state."
                    },
                    "featurestate_uuid": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith feature state UUID."
                    },
                    "multivariate_feature_state_values": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {},
                        "additionalProperties": true,
                        "description": "One multivariate feature value returned by Flagsmith."
                      },
                      "description": "Multivariate feature values returned by Flagsmith."
                    },
                    "metadata": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "Flagsmith metadata attached to this feature state."
                    },
                    "raw": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The raw Flagsmith feature state object."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Flagsmith feature flag state."
                },
                "description": "Flags evaluated for this identity."
              },
              "traits": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "trait_key": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith trait key."
                    },
                    "trait_value": {
                      "anyOf": [
                        {
                          "type": "string",
                          "description": "A string trait value."
                        },
                        {
                          "type": "number",
                          "description": "A numeric trait value."
                        },
                        {
                          "type": "boolean",
                          "description": "A boolean trait value."
                        },
                        {
                          "type": "null",
                          "description": "A null trait value."
                        }
                      ],
                      "description": "A Flagsmith trait value."
                    },
                    "raw": {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "The raw Flagsmith trait object."
                    }
                  },
                  "additionalProperties": true,
                  "description": "A Flagsmith identity trait returned by the API."
                },
                "description": "Traits returned for this identity."
              },
              "raw": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "The raw Flagsmith identity response."
              }
            },
            "additionalProperties": true,
            "description": "A Flagsmith identity response."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Flagsmith identity response."
          }
        },
        "additionalProperties": false,
        "description": "The Flagsmith identity result."
      }
    },
    {
      "id": "flagsmith.list_flags",
      "service": "flagsmith",
      "name": "list_flags",
      "description": "List feature flags for the connected Flagsmith environment.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "feature": {
            "type": "string",
            "minLength": 1,
            "description": "The Flagsmith feature name."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for listing Flagsmith flags."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "flags": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "feature": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "integer",
                      "description": "The Flagsmith feature id."
                    },
                    "name": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith feature name."
                    },
                    "type": {
                      "type": "string",
                      "minLength": 1,
                      "description": "The Flagsmith feature type."
                    }
                  },
                  "additionalProperties": true,
                  "required": [
                    "name"
                  ],
                  "description": "The Flagsmith feature metadata."
                },
                "enabled": {
                  "type": "boolean",
                  "description": "Whether the feature is enabled."
                },
                "feature_state_value": {
                  "anyOf": [
                    {
                      "type": "string",
                      "description": "A string feature value."
                    },
                    {
                      "type": "number",
                      "description": "A numeric feature value."
                    },
                    {
                      "type": "boolean",
                      "description": "A boolean feature value."
                    },
                    {
                      "type": "object",
                      "properties": {},
                      "additionalProperties": true,
                      "description": "An object feature value."
                    },
                    {
                      "type": "array",
                      "items": {
                        "description": "One array feature value."
                      },
                      "description": "An array feature value."
                    },
                    {
                      "type": "null",
                      "description": "A null feature value."
                    }
                  ],
                  "description": "The value attached to a Flagsmith feature state."
                },
                "featurestate_uuid": {
                  "type": "string",
                  "minLength": 1,
                  "description": "The Flagsmith feature state UUID."
                },
                "multivariate_feature_state_values": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {},
                    "additionalProperties": true,
                    "description": "One multivariate feature value returned by Flagsmith."
                  },
                  "description": "Multivariate feature values returned by Flagsmith."
                },
                "metadata": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Flagsmith metadata attached to this feature state."
                },
                "raw": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "The raw Flagsmith feature state object."
                }
              },
              "additionalProperties": true,
              "description": "A Flagsmith feature flag state."
            },
            "description": "Feature flags returned by Flagsmith."
          },
          "raw": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "One raw feature state."
            },
            "description": "Raw Flagsmith feature state objects."
          }
        },
        "additionalProperties": false,
        "description": "The Flagsmith flag list response."
      }
    }
  ]
}
