findById

View as Markdown
# Get Multi-Accounts by Project Retrieves all multi-account associations detected within a specific project. This endpoint returns a paginated list of users who have been identified as operating multiple accounts, helping you detect and prevent fraud, abuse, and policy violations. ## Endpoint ``` GET {base_url}/api/v1/{account_id}/projects/{project_id}/multiaccounts ``` ## Authentication Requires API key authentication: ``` Authorization: Bearer {api_key} ``` ## Path Parameters | Parameter | Type | Required | Description | |-----------|------|----------|-------------| | `account_id` | string | Yes | Your unique BotBye account identifier | | `project_id` | string | Yes | The project identifier for which to retrieve multi-account data | ## Query Parameters This endpoint supports pagination parameters to navigate through large result sets: - See [Pagination query parameters](https://botbye.com/docs/api#query-parameters) for details on `first`, `after`, `last`, `before` parameters ## Response Structure The response follows a cursor-based pagination pattern with the following structure: ```json { "edges": [ { "cursor": "string", "node": { "userId": "string", "accountId": "string", "siteKey": "string", "createdAt": "string (ISO 8601 datetime)" } } ], "pageInfo": { "hasPreviousPage": boolean, "hasNextPage": boolean, "startCursor": "string | null", "endCursor": "string | null", "total": integer }, "attributes": {} } ``` ### Response Fields **edges** (array): Contains the multi-account records - **cursor** (string): Pagination cursor for this record - **node** (object): The multi-account data - **userId** (string): The user identifier associated with multiple accounts - **accountId** (string): The BotBye account identifier - **siteKey** (string): The site/project key where the multi-account was detected - **createdAt** (string): ISO 8601 timestamp when the multi-account association was first detected **pageInfo** (object): Pagination metadata - **hasPreviousPage** (boolean): Whether there are more results before the current page - **hasNextPage** (boolean): Whether there are more results after the current page - **startCursor** (string | null): Cursor pointing to the first item in the current page - **endCursor** (string | null): Cursor pointing to the last item in the current page - **total** (integer): Total number of multi-account associations found **attributes** (object): Additional metadata (typically empty) ## Example Response ```json { "edges": [ { "cursor": "YXJyYXljb25uZWN0aW9uOjA=", "node": { "userId": "user_abc123", "accountId": "185071d5-d4fe-4bea-93df-19d0bd8c2d0d", "siteKey": "sk_live_abc123xyz", "createdAt": "2024-08-17T14:32:10Z" } }, { "cursor": "YXJyYXljb25uZWN0aW9uOjE=", "node": { "userId": "user_def456", "accountId": "185071d5-d4fe-4bea-93df-19d0bd8c2d0d", "siteKey": "sk_live_abc123xyz", "createdAt": "2024-08-18T09:15:42Z" } } ], "pageInfo": { "hasPreviousPage": false, "hasNextPage": true, "startCursor": "YXJyYXljb25uZWN0aW9uOjA=", "endCursor": "YXJyYXljb25uZWN0aW9uOjE=", "total": 47 }, "attributes": {} } ``` ## Use Cases - **Fraud Detection**: Identify users creating multiple accounts to abuse promotions or referral programs - **Ban Evasion Detection**: Detect users creating new accounts after being banned - **Policy Enforcement**: Enforce terms of service that limit users to single accounts - **Abuse Prevention**: Prevent vote manipulation, review fraud, or other multi-account abuse - **Security Auditing**: Review all multi-account associations for security analysis - **User Behavior Analysis**: Understand patterns of legitimate vs. fraudulent multi-account usage ## Pagination Example To retrieve the next page of results, use the `endCursor` value: ``` GET {base_url}/api/v1/{account_id}/projects/{project_id}/multiaccounts?after=YXJyYXljb25uZWN0aW9uOjE=&first=20 ``` ## Important Notes - Multi-account detection uses advanced device and browser fingerprinting - The same `userId` appearing multiple times indicates multiple accounts from the same device/browser - `createdAt` timestamp indicates when BotBye first detected the multi-account association - Use pagination to efficiently process large numbers of multi-account detections - Consider implementing automated workflows to handle detected multi-accounts (e.g., flagging for review, automatic blocking) - False positives can occur in shared device scenarios (e.g., public computers, family devices)

Path parameters

account_idstringRequired
project_idstringRequired
multiaccount_idstringRequired

Query parameters

cursorstringOptional
(Optional): a cursor for pagination. - `after` (string): Pointer to the item after which the items are to be retrieved. - `before` (string): Pointer to the item before which the items are to be retrieved. - `first` (number): specifies the maximum number of results to return in a single response. By default - 20, max - 500.
wherestringOptional
(Optional): is used to create conditions for data filtering. It can be used to create simple conditions (leaf nodes) as well as compound logical expressions (branch nodes). - `predicate` (string): The filtering condition (e.g., `gte`, `lte`, `eq` for a leaf or `and`, `or` for a branch). Possible values [[#Predicate]] - `opearands` (string): A list of nested conditions (used only for branches, such as `and`, `or`). - `fieldPath` (string): The field to which the filtering condition is applied (used only for a leaf. Each entity has its own fieldPath list). - `value` (string): The value to compare against the field (used only for a leaf).

Response headers

Content-Lengthinteger
Connectionstring

Response

success
edgeslist of objects
pageInfoobject
attributesobject

Errors

400
Bad Request Error