@xfloor-memory-sdk
  1. Floor Management
@xfloor-memory-sdk
  • Get Started
    • Overview
    • Quick Start
    • Authentication and Identification
    • Core Concepts (5-Minute Read)
    • What to Use First (API Map)
  • SDK
    • Overview
    • SDK Installation & Setup
    • Python SDK
    • JavaScript SDK
    • Typescript SDK
    • Java SDK
    • FAQ & Troubleshooting
    • Copy-Paste Debug Checklists
  • Core FloorMemory
    • Query (Primary API)
      POST
    • Create Event (Post Content)
      POST
    • Recent Events
      GET
    • Basic information of a floor
      GET
  • Floor Management
    • Edit floor
      POST
    • Make floor Private
      POST
    • Make floor public
      POST
    • Rename floor
      POST
  • Registration
    • Sign Up
      POST
    • Sign In with email ID
      POST
    • Sign In with Mobile number
      POST
    • Validation
      POST
    • Change Password
      POST
    • Reset Password
      POST
    • Change email ID
      POST
    • Change Mobile number
      POST
    • Send Validation code
      POST
    • External User Registration
      POST
  • SDKs
  • Schemas
    • PostAdd
    • QueryResponse
    • Media
    • UserDetails
    • SignUpResponse
    • BlockDetails
    • FloorInfo
    • Threads
    • EventResponse
    • 400ErrorCode
    • Remaining
  1. Floor Management

Make floor Private

POST
/api/memory/make/floor/private/{floor_id}
This API changes a floor’s visibility to PRIVATE.
It is used when a floor owner wants to restrict access to a floor that is currently public. After the update, the floor becomes private and is no longer accessible to non-authorized users (based on your platform’s access rules).
This endpoint is state-changing:
If the floor is PUBLIC, it will be converted to PRIVATE
If the floor is already PRIVATE, the API returns success (idempotent) or an “already private” response depending on implementation
This API is commonly used in:
Floor settings → “Privacy” toggle
Developer-managed pod workflows (app_id context)
Admin tools (if applicable)

Request Method#

POST

Content-Type#

application/x-www-form-urlencoded (or multipart/form-data if your system uses form-data)
(Document whichever you actually accept; below assumes standard form fields.)

Request Parameters (Form Fields)#

FieldTypeRequiredDescription
user_idStringYesUser requesting the change. Must be the owner of the floor.
floor_idStringYesPublic identifier of the floor to update.
app_idStringNoCalling application identifier (used for developer/pod integration).

Authorization Rules (Critical)#

The caller must be authenticated as user_id
Only the floor owner can change floor visibility
If the user is not the owner, the request must be rejected

Behavior Rules#

Converts visibility from PUBLIC → PRIVATE
Does not modify floor content or blocks
Access enforcement for private floors is applied immediately after the change
Idempotency
Calling this API multiple times should not cause repeated changes
If already private, the API should either:
return success with a message like "already private", or
return a specific error/status indicating no-op

Response Format#

application/json

Sample Success Response#

(Example — adjust to match your actual response format)
{
  "status": "SUCCESS",
  "floor_id": "my_floor",
  "visibility": "PRIVATE",
  "message": "Floor is now private"
}

Sample No-Op Response (Already Private)#

{
  "status": "SUCCESS",
  "floor_id": "my_floor",
  "visibility": "PRIVATE",
  "message": "Floor is already private"
}

Error Responses (Examples)#

Not Authorized (Not Owner)#

{
  "status": "ERROR",
  "message": "Only the floor owner can change floor visibility"
}

Floor Not Found#

{
  "status": "ERROR",
  "message": "Floor not found"
}

Invalid Request#

{
  "status": "ERROR",
  "message": "user_id and floor_id are required"
}

Notes#

This API is intended to control floor visibility only; membership/invite rules (for private floors) are handled elsewhere.
app_id is provided for developer/pod applications and is optional unless enforced by your app model.
If you support floor types like POD, document whether pods are allowed to be private or not (some platforms restrict this).

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Path Params

Query Params

Responses

🟢200Success
application/json
Body

🟠400ConversionError
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://appfloor.in/api/memory/make/floor/private/?user_id&app_id' \
--header 'Authorization: Bearer <token>'
Response Response Example
200 - Example 1
{
    "floor_id": "string",
    "title": "string",
    "details": "string",
    "floor_uid": "string",
    "blocks": [
        {
            "block_id": "string",
            "type": "string",
            "title": "string"
        }
    ],
    "avatar": {
        "url": "string",
        "type": "string"
    },
    "is_owner": "string",
    "floor_type": "string",
    "app_id": "string"
}
Modified at 2026-02-13 08:34:42
Previous
Edit floor
Next
Make floor public
Built with