## Documentation Index

Fetch the complete documentation index at: [/docs/llms.txt](/content/docs/llms.txt)

Use this file to discover all available pages before exploring further.

---

### Search Organizations

#### cURL

```bash
curl --request POST \
  --url https://api.stytch.com/v1/b2b/organizations/search \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "cursor": "<string>",
  "limit": 1
}
'```

---

### Python Example

```python
import requests

url = "https://api.stytch.com/v1/b2b/organizations/search"

payload = {
    "cursor": "<string>",
    "limit": 1
}
headers = {
    "Authorization": "Basic <encoded-value>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
```

---

### JavaScript Example

```javascript
const options = {
  method: 'POST',
  headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
  body: JSON.stringify({cursor: '<string>', limit: 1})
};

fetch('https://api.stytch.com/v1/b2b/organizations/search', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
```

---

### PHP Example

```php
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://api.stytch.com/v1/b2b/organizations/search",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'cursor' => '<string>',
    'limit' => 1
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Basic <encoded-value>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
```

---

### Response Codes
- `200`: Successful response
- `401`: Unauthorized credentials
- `429`: Too many requests
- `500`: Internal server error

---

### API Response Structure

```json
{
  "request_id": "<string>",
  "organizations": [
    {
      "organization_id": "<string>",
      "organization_name": "<string>",
      "organization_logo_url": "<string>",
      "organization_slug": "<string>",
      "sso_jit_provisioning": "<string>",
      "sso_jit_provisioning_allowed_connections": [
        "<string>"
      ],
      "sso_active_connections": [
        {
          "connection_id": "<string>",
          "display_name": "<string>",
          "identity_provider": "<string>"
        }
      ],
      "email_allowed_domains": [
        "<string>"
      ],
      "email_jit_provisioning": "<string>",
      "email_invites": "<string>",
      "auth_methods": "<string>",
      "allowed_auth_methods": [
        "<string>"
      ],
      "mfa_policy": "<string>",
      "rbac_email_implicit_role_assignments": [
        {
          "domain": "<string>",
          "role_id": "<string>"
        }
      ],
      "mfa_methods": "<string>",
      "allowed_mfa_methods": [
        "<string>"
      ],
      "oauth_tenant_jit_provisioning": "<string>",
      "claimed_email_domains": [
        "<string>"
      ],
      "first_party_connected_apps_allowed_type": "<string>",
      "allowed_first_party_connected_apps": [
        "<string>"
      ],
      "third_party_connected_apps_allowed_type": "<string>",
      "allowed_third_party_connected_apps": [
        "<string>"
      ],
      "custom_roles": [
        {
          "role_id": "<string>",
          "description": "<string>",
          "permissions": [
            {
              "resource_id": "<string>",
              "actions": [
                "<string>"
              ]
            }
          ]
        }
      ],
      "trusted_metadata": {},
      "created_at": "<string>",
      "updated_at": "<string>",
      "organization_external_id": "<string>",
      "sso_default_connection_id": "<string>",
      "scim_active_connection": {
        "connection_id": "<string>",
        "display_name": "<string>",
        "bearer_token_last_four": "<string>",
        "bearer_token_expires_at": "<string>"
      },
      "allowed_oauth_tenants": {}
    }
  ],
  "results_metadata": {
    "total": 123,
    "next_cursor": "<string>"
  },
  "status_code": 123
}
```

---

### Filter Reference

| Filter Name | Value Type | Description | Example |
| --- | --- | --- | --- |
| `organization_ids` | `array[string]` | Filter by one or more exact organization IDs. | `[
  "organization-test-16d9ba61-97a1-4ba4-9720-b03761dc50c6"
]` |
| `organization_slugs` | `array[string]` | Filter by one or more exact organization slugs. | `[
  "acme-corp"
]` |
| `organization_slug_fuzzy` | `string` | Fuzzy search for organization by slug. Requires a minimum of three characters. | `"acme"` |
| `organization_name_fuzzy` | `string` | Fuzzy search for organization by name. Requires a minimum of three characters. | `"Acme"` |
| `member_emails` | `array[string]` | Filter by one or more exact member email addresses. | `[
  "member@example.com"
]` |
| `member_email_fuzzy` | `string` | Fuzzy search for organization by member email address. Requires a minimum of three characters. | `"john"` |
| `allowed_domains` | `array[string]` | Filter by one or more exact allowed email domains. | `[
  "example.com"
]` |
| `allowed_domain_fuzzy` | `string` | Fuzzy search for organization by allowed email domain. Requires a minimum of three characters. | `"exam"` |
| `claimed_email_domains` | `array[string]` | Filter by one or more exact claimed email domains. | `[
  "acme.com"
]` |
| `has_active_sso_connection` | `boolean` | Filter organizations by whether they have an active SSO connection (SAML, OIDC, or external). | `true` |
| `sso_connection_id` | `string` | Filter by exact SSO connection ID (SAML, OIDC, or external). | `"saml-connection-test-1234567890"` |

### Authorizations

Authorization: string

Required: Basic authentication header of the form `Basic <encoded-value>`, where `<encoded-value>` is the base64-encoded string `username:password`.

### Request Body

- `cursor`: string - The `cursor` field allows you to paginate through your results. Each result array is limited to 1000 results. If your query returns more than 1000 results, you will need to paginate the responses using the `cursor`.
- `limit`: integer<int32> - The number of search results to return per page. The default limit is 100. A maximum of 1000 results can be returned by a single search request.
- `query`: object - The optional query object contains the operator, i.e., `AND` or `OR`, and the operands that will filter your results.

### Response

| Status Code | Description |
| --- | --- |
| `200` | Successful response |
| `401` | Unauthorized credentials |
| `429` | Too many requests |
| `500` | Internal server error |
