> ## Documentation Index
> Fetch the complete documentation index at: https://docs.thesearchx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Client

## Add a Client

Follow the steps to add a new client

You need to fill add client form at [Add Client](http://thesearchx.com/app/client), where following fields are required.

### Form Fields

<ResponseField name="name" type="string" required>
  Name of your site/app.

  Example: `thesearchx`
</ResponseField>

<ResponseField name="Datasource Type" type="JSON | CSV | SHOPIFY | STRAPI | GRAPHQL" required>
  Select your Datasource Format

  Example: `JSON`
</ResponseField>

<ResponseField name="Embedding Fields" type="FieldName(String) : Priority(Number)" required>
  Field you want to search on in your data and it's priority. If you want to search on nested field then you have to give nested path of the that field.

  For example your data object is following:

  ```json example.json theme={null}
  {
    "title": "thesearchx",
    "category": "Search",
    "metadata": {
      "description": "Some Search Description",
      "count": 300
    }
  }
  ```

  Here, If you want to search on title and description so you have to write Field Name as `title` and `metadata.description` and priority as number.

  Priority is the number for giving priority to the field.
</ResponseField>

<ResponseField name="Identifier" type="string" required>
  Unique Identifier of your data

  Example: `id`
</ResponseField>

<ResponseField name="Entity URL" type="string" required>
  Link to Fetch the data.
  For example: If your data format is `JSON` then you have to give then link from where JSON data is readable

  Example: `https://thesearchx.com`
</ResponseField>

#### Fields Required Based on Datasource Format

<ResponseField name="Shpofy Token | Strapi Token | GraphQL Token" type="string">
  Required for `SHOPIFY`, `STRAPI` and `GRAPHQL` data to access the data

  Example: `abcdefghijklmnso823483ydwjdbewhoi3h9`
</ResponseField>

<ResponseField name="GraphQL Query Key" type="string">
  Required for `GRAPHQL` data.

  Example: `searchProducts`
</ResponseField>

<ResponseField name="GraphQL Query" type="string">
  Required for `GRAPHQL` data. Write GraphQL Query in Given Text area at Form.

  Example:

  ```GraphQL Example.graphql theme={null}
  query getTodos {
    todos {
      title
    }
  }
  ```
</ResponseField>

<ResponseField name="GraphQL Variable JSON" type="Object">
  Required for `GRAPHQL` data. Write GraphQL Variable JSON in Given Text area at Form.

  Example:

  ```json Example.json theme={null}
  {
    "filter": {
      "status": {
        "eq": "ENABLED"
      }
    },
    "limit": 50
  }
  ```
</ResponseField>
