### GET /authorize/hello Source: https://docs.straitsx.com/reference/say-hello Test your connection with our server to start your integration. This endpoint verifies your API key and connection to the StraitsX server. ```APIDOC ## GET /authorize/hello ### Description Test your connection with our server to start your integration. ### Method GET ### Endpoint /authorize/hello ### Parameters #### Header Parameters - **X-XFERS-APP-API-KEY** (string) - Required - You can retrieve this from your Dashboard Developer Tools.

Switch to Sandbox mode to get your Sandbox APP-API-KEY.

### Request Example ```json { "msg": "Hello world" } ``` ### Response #### Success Response (200) - **msg** (string) - A confirmation message, typically "Hello world". #### Response Example ```json { "msg": "Hello world" } ``` ``` -------------------------------- ### Incoming Payment Webhook Callback Example (JSON) Source: https://docs.straitsx.com/docs/regular-payment This is an example JSON payload representing a webhook callback for an incoming payment. It details transaction information such as amount, currency, sender details, and status. This format is used for StraitsX webhook notifications. ```json { "additional_info": "", "amount": 0.01, "bank_account_no": "3225300696000", "blocked_reasons": [ { "code": "NM-001" } ], "created_at": "2024-06-03T07:28:09.908Z", "currency": "xsgd", "end_to_end_ref": "Transfer", "fees": 0.01, "id": "contract_d176576dfb1a498ead53d2b5f77e4122", "idempotency_id": "SUBSCRIPTION_0cd2163dc32dfdb76250db29f58da2ec", "merchant_ref": "ref_0d1w4m0xepp40", "sender_bank": "DBS Bank Ltd", "sender_bank_account_holder_name": "JOHN DOE", "sender_bank_account_no": "01234567", "sender_bank_swift_bic": "DBSSSGSGXXX", "status": "pending", "transaction_remarks": "abc", "type": "Direct bank transfer" } ``` -------------------------------- ### Create Virtual Bank Account (USD) - Rejected Example Source: https://docs.straitsx.com/reference/bank-transfer-payments-1 This example shows the JSON payload for a rejected United States Dollar (USD) virtual bank account creation. Rejections may occur due to compliance reasons. A callback will be sent to the configured URL upon status change. ```JSON { "data": { "attributes": { "currency": "USD", "referenceId": "finaltesting123_usd_biz", "status": "disabled" }, "id": "StraitsX-2370-0fbec826-5c15-4afe-b338-5818cc706da5", "type": "virtual_bank_account" } } ``` -------------------------------- ### RFI Request Schema and Example - JSON Source: https://docs.straitsx.com/reference/sandbox-simulate-rfi-questions Defines the JSON schema for an RFI request, including customer profile information, active RFI details, and RFI questions. It also provides an example of a successful response ('OK') with populated fields. ```JSON { "data": { "id": "rfi_request_32a7b51c-17e4-44cb-9e34-b1822ae844f2", "type": "rfiRequest", "attributes": { "customerProfileId": "customer_profile_a1cc2c3b-8e5e-4192-bf75-1d28bfa6248d", "activeRfiRequest": { "createdAt": "2025-11-06T09:07:39Z", "status": "sent", "rfiQuestions": [ { "id": 1, "question": "What is your occupation?", "optional": false, "replyType": "TEXT", "questionStatus": "pending", "requiresAction": true }, { "id": 2, "question": "Upload ID document", "optional": false, "replyType": "DOC", "questionStatus": "pending", "requiresAction": true }, { "id": 3 } ] } }, "rfiProgressSummary": { "expiryDate": "string (date-time)", "daysUntilExpiry": "integer", "daysExpired": "integer", "completionPercentage": "integer", "totalQuestions": "integer", "acceptedQuestions": "integer", "pendingQuestions": "integer", "rejectedQuestions": "integer" } }, "required": [ "type", "id", "attributes", "rfiProgressSummary" ] } ``` -------------------------------- ### Get Bank Accounts List Response Example Source: https://docs.straitsx.com/reference/user-withdrawal This is an example of a successful response (HTTP 200) when retrieving a list of bank accounts. It shows the JSON structure containing an array of bank account objects, each with details like ID, type, and attributes. ```json { "data": [ { "id": "bank_account_6f0a69c0-1837-4968-9866-e32389c1234", "type": "bankAccount", "attributes": { "accountHolderName": "JOHN DOE", "accountNo": "0123456789", "routingCode": null, "bank": "SCB", "swiftBic": "SCBLSG22XXX", "intermediarySwiftBic": null, "status": "verified", "createdAt": "2025-03-05T11:43:41.866+08:00", "updatedAt": "2025-03-05T11:46:48.721+08:00" } } ] } ``` -------------------------------- ### Say Hello API Response Example Source: https://docs.straitsx.com/reference This is an example of a successful response from the 'Say Hello' API endpoint. A 200 status code and a JSON object with a 'msg' field indicate a successful connection test. ```json { "msg": "Hello world" } ``` -------------------------------- ### GET /v1/authorize/hello Source: https://docs.straitsx.com/reference Test your connection with the StraitsX server. This endpoint is used to verify that your integration is set up correctly and can communicate with the API. ```APIDOC ## GET /v1/authorize/hello ### Description Test your connection with our server to start your integration. ### Method GET ### Endpoint https://api-sandbox.straitsx.com/v1/authorize/hello ### Parameters #### Header Parameters - **X-XFERS-APP-API-KEY** (string) - Required - Defaults to {YOUR_API_KEY}. You can retrieve this from your Dashboard Developer Tools. Switch to Sandbox mode to get your Sandbox APP-API-KEY. ### Request Example ```bash curl --request GET \ --url https://api-sandbox.straitsx.com/v1/authorize/hello \ --header 'X-XFERS-APP-API-KEY: {YOUR_API_KEY}' \ --header 'accept: application/json' ``` ### Response #### Success Response (200) - **msg** (string) - A confirmation message indicating a successful connection. #### Response Example ```json { "msg": "Hello world" } ``` ``` -------------------------------- ### Get Website Details Source: https://docs.straitsx.com/reference/get-a-swap-quote Retrieves detailed information about a specific website, including its project context and associated configurations. ```APIDOC ## GET /websites/straitsx ### Description Retrieves detailed information about the StraitsX website project. ### Method GET ### Endpoint /websites/straitsx ### Parameters ### Request Example ```json {} ``` ### Response #### Success Response (200) - **id** (string) - The unique identifier for the website. - **name** (string) - The name of the website. - **url** (string) - The URL of the website. - **description** (string) - A brief description of the website. - **project** (object) - Details about the project associated with the website. - **id** (string) - The unique identifier for the project. - **name** (string) - The name of the project. - **content** (object) - The content associated with the website. - **example** (object) - An example of the content structure. - **data** (object) - The main data payload. - **someField** (string) - An example field within the data. - **nestedObject** (object) - A nested object example. - **fieldA** (string) - A field within the nested object. - **arrayField** (array) - An example array. - **item** (object) - An object within the array. - **id** (string) - Identifier for the item. - **name** (string) - Name of the item. - **value** (string) - Value associated with the item. - **expiresAt** (string) - The expiration timestamp for the record. - **createdAt** (string) - The creation timestamp for the record. #### Response Example ```json { "id": "website-123", "name": "StraitsX", "url": "https://straitsx.com", "description": "Official website for StraitsX.", "project": { "id": "project-abc", "name": "StraitsX Project" }, "content": { "example": { "data": { "someField": "exampleValue", "nestedObject": { "fieldA": "nestedValue" }, "arrayField": [ { "id": "item-1", "name": "First Item", "value": "100" } ] } } }, "expiresAt": "2024-04-01T14:47:13.120+08:00", "createdAt": "2024-04-01T14:42:13.273+08:00" } ``` ``` -------------------------------- ### Get Supported Swap Pairs Source: https://docs.straitsx.com/reference/get-supported-swap-pairs Retrieves a list of all supported currency pairs available for swapping on the StraitsX platform. This endpoint is available in both production and sandbox environments. ```APIDOC ## GET /swap/pairs ### Description Get a list of supported swap pairs. This endpoint is available in both Production and Sandbox environments. ### Method GET ### Endpoint /swap/pairs ### Parameters #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **data** (array) - An array of objects, where each object represents a supported swap pair. - **id** (string) - The unique identifier for the swap pair. - **type** (string) - The type of the resource, always "swapPair". - **attributes** (object) - Contains the attributes of the swap pair. - **code** (string) - The code representing the swap pair (e.g., "XSGDUSDC"). #### Response Example ```json { "data": [ { "id": "1", "type": "swapPair", "attributes": { "code": "XSGDUSDC" } }, { "id": "2", "type": "swapPair", "attributes": { "code": "XSGDXUSD" } }, { "id": "3", "type": "swapPair", "attributes": { "code": "USDCUSDT" } }, { "id": "4", "type": "swapPair", "attributes": { "code": "XUSDUSDC" } }, { "id": "5", "type": "swapPair", "attributes": { "code": "XUSDUSDT" } } ] } ``` ``` -------------------------------- ### Example JSON Request for Business Customer Profile Creation Source: https://docs.straitsx.com/reference/create-a-business-customer-profile This example demonstrates the structure of a JSON request payload for creating a business customer profile. It includes essential details such as customer name, registration information, and address. The `country` field must be an alpha-2 country code. ```json { "customerName": "Acme Fintech Pte Ltd", "registrationType": "business", "registrationId": "201411660R", "registrationIdType": "business_reg_no", "countryOfIncorporation": "SG", "dateOfIncorporation": "2014-06-05", "registrationIdCountry": "SG", "placeOfBiz": "100 Industry Drive, Singapore 123456", "placeOfBizCountry": "SG", "address": { "street": "100 Industry Drive, #01-01", "city": "Singapore", "postalCode": "123456", "state": "Singapore", "country": "SG" } } ``` -------------------------------- ### GET /kyc/customer_profiles Source: https://docs.straitsx.com/reference/get-a-list-of-cp Retrieves a list of customer profiles (CP+). Supports filtering, sorting, and pagination. ```APIDOC ## GET /kyc/customer_profiles ### Description Retrieves a list of customer profiles (CP+). Supports filtering, sorting, and pagination. ### Method GET ### Endpoint https://api-sandbox.straitsx.com/v1/kyc/customer_profiles ### Parameters #### Header Parameters - **X-XFERS-APP-API-KEY** (string) - Required - You can retrieve this from your Dashboard Developer Tools. #### Query Parameters - **page[size]** (integer) - Optional - Number of items per page (Must be greater than 0). Default: 10. - **page[number]** (integer) - Optional - Page number (Must be greater than 0). Default: 1. - **sort** (string) - Optional - Sort order. Options: `created_at`, `-created_at`, `updated_at`, `-updated_at`. Default: `created_at`. - **filter[created_after]** (string) - Optional - ISO8601 format. Filters profiles created after this date. - **filter[created_before]** (string) - Optional - ISO8601 format. Filters profiles created before this date. - **filter[updated_after]** (string) - Optional - ISO8601 format. Filters profiles updated after this date. - **filter[updated_before]** (string) - Optional - ISO8601 format. Filters profiles updated before this date. - **filter[registration_id]** (string) - Optional - NRIC/Passport No./Business Registration ID (4 to 35 alphanumeric characters). ### Request Example ```json { "message": "This endpoint does not require a request body." } ``` ### Response #### Success Response (200) - **data** (array) - Array of customer profile objects. - **id** (string) - Unique identifier for the customer profile. - **type** (string) - The resource type, always "customer_profiles". - **attributes** (object) - Contains the customer profile details. - **created_at** (string) - ISO8601 format timestamp of creation. - **updated_at** (string) - ISO8601 format timestamp of last update. - **status** (string) - Current status of the customer profile. - **profile_type** (string) - Type of profile (e.g., 'individual', 'business'). - **details** (object) - Specific details depending on profile type. #### Response Example ```json { "data": [ { "id": "cp_abc123", "type": "customer_profiles", "attributes": { "created_at": "2023-10-27T10:00:00Z", "updated_at": "2023-10-27T10:30:00Z", "status": "active", "profile_type": "individual", "details": { "first_name": "John", "last_name": "Doe" } } } ], "links": { "self": "https://api-sandbox.straitsx.com/v1/kyc/customer_profiles?page[size]=10&page[number]=1", "next": "https://api-sandbox.straitsx.com/v1/kyc/customer_profiles?page[size]=10&page[number]=2" }, "meta": { "total_count": 100, "page_count": 10, "current_page": 1, "per_page": 10 } } ``` ``` -------------------------------- ### Example Trader and Beneficial Owner Data Source: https://docs.straitsx.com/reference/sandbox-update-customer-profile-verification-status Illustrates sample data for a trader and beneficial owners, adhering to the defined JSON schema. It includes personal details and registration information for each. ```json { "lastName": { "type": "string", "example": "Doe" }, "firstName": { "type": "string", "example": "John" }, "nationality": { "type": "string", "example": "SG" }, "dateOfBirth": { "type": "string", "example": "1950-01-01" }, "registrationId": { "type": "string", "example": "A12321321" }, "countryOfResidence": { "type": "string", "example": "SG" }, "registrationIdType": { "type": "string", "example": "passport" }, "registrationIdCountry": { "type": "string", "example": "SG" } } ``` -------------------------------- ### Get Customer Payment Methods Source: https://docs.straitsx.com/changelog/14-mar-24-usd-rails-blockchain-api-now-available Fetches the list of virtual accounts created for a specific customer profile. ```APIDOC ## GET /api/v3/customer_profile/{customer_profile_id}/payment_methods ### Description Retrieves the list of virtual accounts associated with a specific customer profile. ### Method GET ### Endpoint `/api/v3/customer_profile/{customer_profile_id}/payment_methods` ### Parameters #### Path Parameters - **customer_profile_id** (string) - Required - The unique identifier of the customer profile. #### Response #### Success Response (200) - **payment_methods** (array) - A list of payment method objects. - **account_id** (string) - The unique identifier of the virtual account. - **account_type** (string) - The type of the virtual account (e.g., 'VIRTUAL_BANK_ACCOUNT'). - ... other payment method details ``` -------------------------------- ### Error Handling Examples Source: https://docs.straitsx.com/reference/create-a-customer-profile-api This section provides examples of error responses that may be returned by the API, illustrating common issues and their corresponding error codes. ```APIDOC ## Error Handling Examples ### Description Examples of error responses encountered when using the StraitsX API. These illustrate common validation issues and provide guidance on how to resolve them. ### Method N/A (Illustrative Examples) ### Endpoint N/A (Illustrative Examples) ### Parameters N/A ### Request Example N/A ### Response #### Error Response Example 1 (Invalid Nationality) - **error** (string) - "Invalid nationality. Please refer to the following document for the accepted values: https://www.iban.com/country-codes" - **error_code** (string) - "XFE12" - **error_handling** (string) - "Make sure you entered the correct parameters." ```json { "error": "Invalid nationality. Please refer to the following document for the accepted values: https://www.iban.com/country-codes", "error_code": "XFE12", "error_handling": "Make sure you entered the correct parameters." } ``` #### Error Response Example 2 (Invalid Monthly Transaction Volume) - **error** (string) - "Invalid monthlyTransactionVolume `1`. Must be in [\"0_TO_100000\", \"100001_TO_500000\", \"500001_TO_1000000\", \"100001_TO_10000000\", \"GT_10000000\"]" - **error_code** (string) - "XFE12" - **error_handling** (string) - "Make sure you entered the correct parameters." ```json { "error": "Invalid monthlyTransactionVolume `1`. Must be in [\"0_TO_100000\", \"100001_TO_500000\", \"500001_TO_1000000\", \"100001_TO_10000000\", \"GT_10000000\"]", "error_code": "XFE12", "error_handling": "Make sure you entered the correct parameters." } ``` #### Error Response Example 3 (Missing Parameter) - **error** (string) - "natureOfBusiness is missing" - **error_code** (string) - "XFE15" - **error_handling** (string) - "Make sure you entered the correct required parameter." ```json { "error": "natureOfBusiness is missing", "error_code": "XFE15", "error_handling": "Make sure you entered the correct required parameter." } ``` ``` -------------------------------- ### Get Payouts - OpenAPI Specification Source: https://docs.straitsx.com/reference/get-a-list-of-regular-payouts This snippet defines the OpenAPI 3.1.0 specification for retrieving a list of regular payouts via the '/payouts' GET endpoint. It includes details on available query parameters for filtering by date, disbursement method, currency, and status, as well as pagination and sorting options. The base URL for the sandbox environment is also specified. ```json { "openapi": "3.1.0", "info": { "title": "base-url", "version": "1.1.0" }, "servers": [ { "url": "https://api-sandbox.straitsx.com/v1" } ], "security": [ {} ], "paths": { "/payouts": { "get": { "summary": "Get a list of regular payouts", "description": "[Available in Production/Sandbox environment] Retrieve a list of regular payouts", "operationId": "get-a-list-of-regular-payouts", "parameters": [ { "name": "page[size]", "in": "query", "description": "Number of transactions per page(Must be an integer greater than 0)
Regex: `/^0*[1-9][0-9]*$/`", "schema": { "type": "integer", "format": "int32", "default": 10 } }, { "name": "page[number]", "in": "query", "description": "Page number(Must be an integer greater than 0)
Regex: `/^0*[1-9][0-9]*$/`", "schema": { "type": "integer", "format": "int32", "default": 1 } }, { "name": "sort", "in": "query", "description": "Sorted by
Creation Date: Ascending (createdAt) / Descending (-createdAt)
Amount:Ascending (amount) / Descending (-amount)", "schema": { "type": "string" } }, { "name": "filter[to]", "in": "query", "description": "ISO8601 format in UTC e.g. `2024-03-27T10:59:53Z`
Regex: `/^(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(\.\d+)?(Z|([+-]([01]\d|2[0-3]):([0-5]\d)))?)?)?)?$/i`", "schema": { "type": "string" } }, { "name": "filter[from]", "in": "query", "description": "ISO8601 format in UTC e.g. `2024-03-27T10:59:53Z`
Regex: `/^(\d{4})(-(0[1-9]|1[0-2])(-(0[1-9]|[12]\d|3[01])(T([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(\.\d+)?(Z|([+-]([01]\d|2[0-3]):([0-5]\d)))?)?)?)?$/i`", "schema": { "type": "string" } }, { "name": "filter[disbursementMethodType]", "in": "query", "description": "`bankTransfer` or `paynow`, `swift`", "schema": { "type": "string" } }, { "name": "filter[currency]", "in": "query", "description": "`xsgd`, `xusd`", "schema": { "type": "string" } }, { "name": "filter[status]", "in": "query", "description": "Accepts only `failed`, `completed` or `pending`", "schema": { "type": "string" } } ], "responses": { "200": { "description": "200", "content": { "application/json": { "examples": { "Result": { ``` -------------------------------- ### Get Recipient Requirements (Node.js) Source: https://docs.straitsx.com/reference/third-party-payouts Example of fetching recipient requirements using Node.js with the 'node-fetch' library. It shows how to make an asynchronous GET request and handle the JSON response. ```javascript import fetch from 'node-fetch'; const url = "https://api-sandbox.straitsx.com/v1/payout-recipients/requirements"; fetch(url, { method: "GET", headers: { "accept": "application/json" } }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error(error)); ``` -------------------------------- ### Get Recipient Requirements (PHP) Source: https://docs.straitsx.com/reference/customer-profile-payout-recipients A PHP example demonstrating how to fetch recipient requirements from the StraitsX API using cURL. This code sets the necessary headers and sends a GET request. ```php ``` -------------------------------- ### POST /sandbox/paynow_simulations Source: https://docs.straitsx.com/reference/sandbox-create-mock-paynow-payment Creates a mock PayNow payment in the sandbox environment. This endpoint allows for testing payment flows by simulating incoming funds to your business account via PayNow. ```APIDOC ## POST /sandbox/paynow_simulations ### Description [Sandbox] Create a mock PayNow payment. Send test funds to your business account via PayNow. Available in Sandbox environment only. ### Method POST ### Endpoint https://api-sandbox.straitsx.com/v1/sandbox/paynow_simulations ### Parameters #### Header Parameters - **X-XFERS-APP-API-KEY** (string) - Required - You can retrieve this from your Dashboard Developer Tools #### Request Body - **data** (object) - Required - **attributes** (object) - Required - **id** (string) - Optional - PayNow id of the mock paynow payment created - **amount** (integer) - Optional - Transaction amount - **sourceBankAccountHolderName** (string) - Optional - Input a name here to test the pending status for name matching failure - **endToEndRef** (string) - Optional - End user's added comments / notes ### Request Example ```json { "data": { "attributes": { "id": "mock_paynow_id_123", "amount": 1000, "sourceBankAccountHolderName": "Test User", "endToEndRef": "Test payment" } } } ``` ### Response #### Success Response (200) - **data** (object) - Contains details of the created mock PayNow transaction. - **id** (string) - The unique identifier for the transaction. - **type** (string) - The type of the resource, e.g., "paynowTransaction". - **attributes** (object) - Contains the core details of the transaction. - **idempotencyId** (string) - A unique ID for idempotency. - **customerProfileId** (string) - The ID of the customer profile. - **currency** (string) - The currency of the transaction (e.g., "xsgd"). - **amount** (string) - The transaction amount. - **fees** (string) - The transaction fees. - **status** (string) - The current status of the transaction (e.g., "pending"). - **createdAt** (string) - The timestamp when the transaction was created. - **senderInformation** (object) - Details about the sender. - **accountHolderName** (string) - The name of the account holder. - **accountNumber** (string) - The account number. - **bankName** (string) - The name of the bank. - **endToEndRef** (string) - End-to-end reference. - **swiftBic** (string) - SWIFT BIC code. - **transactionRemarks** (string) - Remarks for the transaction. - **paymentMethod** (object) - Details about the payment method. - **id** (string) - The ID of the payment method. - **referenceId** (string) - The reference ID for the payment. - **virtualPaymentAddress** (string) - The virtual payment address. - **base64EncodedImage** (string) - Base64 encoded image of the QR code. - **blockedReasons** (array) - An array of objects detailing reasons if the transaction is blocked. - **code** (string) - The reason code. #### Response Example ```json { "data": { "id": "contract_733b1d7b52e14ccfa74c6664655e0cc1", "type": "paynowTransaction", "attributes": { "idempotencyId": "8cfee2b8-5173-4757-9a75-a769edaaa94c", "customerProfileId": "customer_profile_ea25ab3c-b7b7-49ba-ac66-aec1b9a0374b", "currency": "xsgd", "amount": "0.1", "fees": "0.0", "status": "pending", "createdAt": "2024-07-08T09:40:03.809+08:00", "senderInformation": { "accountHolderName": "John Doe", "accountNumber": "123456789", "bankName": "DBS Bank Ltd", "endToEndRef": "Testing Remarks", "swiftBic": "DBSSSGSGXXX", "transactionRemarks": null }, "paymentMethod": { "id": "paynow_75c8335d-0e91-4110-ba85-7af9298c7094", "referenceId": "new_persistent_QR_2", "virtualPaymentAddress": "UEN#FAZZ", "base64EncodedImage": "iVBORw0KGgoAAAANSUhEUgAAASwAAAxse" }, "blockedReasons": [ { "code": "NM-001" } ] } } } ``` ``` -------------------------------- ### cURL POST Request for PayNow Payment Method Source: https://docs.straitsx.com/reference/paynow-payments-1 This snippet demonstrates how to make a POST request to the StraitsX API to initiate a PayNow payment. It includes the necessary URL, headers for API key, content type, and accept type. Ensure you replace '{YOUR_API_KEY}' with your actual API key. ```shell curl --request POST \ --url https://api-sandbox.straitsx.com/v1/payment_methods/paynow \ --header 'X-XFERS-APP-API-KEY: {YOUR_API_KEY}' \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` -------------------------------- ### Get Recipient Requirements - Ruby Source: https://docs.straitsx.com/reference/regular-payouts Illustrates how to obtain recipient requirements in Ruby using the 'httparty' gem. This example performs a GET request to the specified API endpoint. ```ruby require 'httparty' response = HTTParty.get('https://api-sandbox.straitsx.com/v1/payout-recipients/requirements', headers: { 'accept' => 'application/json' }) puts response.body ``` -------------------------------- ### Get User Profile Source: https://docs.straitsx.com/reference/get-a-list-of-payments-for-a-customer-profile-v2 Retrieves the profile information for the authenticated user. ```APIDOC ## GET /api/users/me ### Description Retrieves the profile details of the currently authenticated user. ### Method GET ### Endpoint /api/users/me ### Parameters #### Query Parameters - **fields** (string) - Optional - Comma-separated list of fields to include in the response. ### Request Example ``` GET /api/users/me?fields=username,email ``` ### Response #### Success Response (200) - **userId** (string) - The unique identifier for the user. - **username** (string) - The user's username. - **email** (string) - The user's email address. #### Response Example ```json { "userId": "a1b2c3d4-e5f6-7890-1234-567890abcdef", "username": "johndoe", "email": "john.doe@example.com" } ``` ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.