Skip to content
On this page

Request API

API is used to manage user requests, such as: room invitation, friend request and so on.

EndpointMethodDescription
request:acceptwebsocketAccept request
request:acceptRequestwebsocketAccept user request
request:declinewebsocketDecline request
request:declineRequestwebsocketDecline user request
request:deletewebsocketDelete request
request:deleteRequestwebsocketDelete user request
request:listwebsocketGet user requests
request:listRequestswebsocketList user requests
request:newwebsocketEventNew user request event
request:deletewebsocketEventDelete user request event
request:acceptwebsocketEventAccept user request event
request:declinewebsocketEventDecline user request event
request:createdwebsocketEventUser request created event
request:deletedwebsocketEventUser request deleted event
request:acceptedwebsocketEventUser request accepted event
request:declinedwebsocketEventUser request declined event

Accept request

Method: websocket

Endpoint: request:accept

DEPRECATED

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Accept user request

Method: websocket

Endpoint: request:acceptRequest

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Decline request

Method: websocket

Endpoint: request:decline

DEPRECATED

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Decline user request

Method: websocket

Endpoint: request:declineRequest

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Delete request

Method: websocket

Endpoint: request:delete

DEPRECATED

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Delete user request

Method: websocket

Endpoint: request:deleteRequest

Request:

{
    "data": {
        "requestId": string
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "error": { "status": bool, "code": int, "message": string }
}

Get user requests

Method: websocket

Endpoint: request:list

DEPRECATED

Description: List of types:

  • Connection - friend request

  • Invitation - invitation request

  • Matchmaking - ideal match request

  • Supporter - become supporter request

  • Recommendation - recommend ideal match request

  • Meeting - invitation to meeting request

  • VerifiableMessage - sign verifiable message request

Request:

{
    "data": {
        "status": string  // pending/accepted/declined
        "type": string  // Connection/Invitation/Matchmaking/Supporter/Recommendation/Meeting
        "category": string  // sent/received
        "offset": int
        "size": int
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "data": {
        "requests": [{ user request structure }]
    }
    "error": { "status": bool, "code": int, "message": string }
}

List user requests

Method: websocket

Endpoint: request:listRequests

Description: List of types:

  • Connection - friend request

  • Invitation - room invitation request

  • Meeting - invitation to meeting request

  • Group - invitation to group request

  • Community - invitation to community request

  • AttestationClaim - endorse attestation claim request

Request:

{
    "data": {
        "status": string  // pending/accepted/declined
        "type": string  // Connection/Invitation/Meeting/Group/Community/AttestationClaim
        "category": string  // sent/received
        "offset": int
        "size": int
    }
    "event": { "id": string, "date": timestamp }
}

Response:

{
    "data": {
        "requests": [{
            "id": string
            "created": timestamp
            "updated": timestamp
            "networkId": string  // Request network id
            "initiatorUserId": string  // Id of user who sent request
            "recipientUserId": string  // Id of user who received request
            "type": string  // Connection/Invitation/Meeting/Community/AttestationClaim
            "status": string  // pending/accepted/declined
            "message": string  // Request message by client
            "source": string  // Request source (like roomId/invitationId for invitation)
            "data": { json data }  // Custom JSON data based on request type
        }]
    }
    "error": { "status": bool, "code": int, "message": string }
}

New user request event

Event: request:new

DEPRECATED

Data:

{
    "data": { user request structure }
    "error": { "status": bool, "code": int, "message": string }
}

Delete user request event

Event: request:delete

DEPRECATED

Data:

{
    "data": { user request structure }
    "error": { "status": bool, "code": int, "message": string }
}

Accept user request event

Event: request:accept

DEPRECATED

Data:

{
    "data": { user request structure }
    "error": { "status": bool, "code": int, "message": string }
}

Decline user request event

Event: request:decline

DEPRECATED

Data:

{
    "data": { user request structure }
    "error": { "status": bool, "code": int, "message": string }
}

User request created event

Event: request:created

Data:

{
    "data": {
        "id": string
        "created": timestamp
        "updated": timestamp
        "networkId": string  // Request network id
        "initiatorUserId": string  // Id of user who sent request
        "recipientUserId": string  // Id of user who received request
        "type": string  // Connection/Invitation/Meeting/Community/AttestationClaim
        "status": string  // pending/accepted/declined
        "message": string  // Request message by client
        "source": string  // Request source (like roomId/invitationId for invitation)
        "data": { json data }  // Custom JSON data based on request type
    }
    "error": { "status": bool, "code": int, "message": string }
}

User request deleted event

Event: request:deleted

Data:

{
    "data": {
        "id": string
        "created": timestamp
        "updated": timestamp
        "networkId": string  // Request network id
        "initiatorUserId": string  // Id of user who sent request
        "recipientUserId": string  // Id of user who received request
        "type": string  // Connection/Invitation/Meeting/Community/AttestationClaim
        "status": string  // pending/accepted/declined
        "message": string  // Request message by client
        "source": string  // Request source (like roomId/invitationId for invitation)
        "data": { json data }  // Custom JSON data based on request type
    }
    "error": { "status": bool, "code": int, "message": string }
}

User request accepted event

Event: request:accepted

Data:

{
    "data": {
        "id": string
        "created": timestamp
        "updated": timestamp
        "networkId": string  // Request network id
        "initiatorUserId": string  // Id of user who sent request
        "recipientUserId": string  // Id of user who received request
        "type": string  // Connection/Invitation/Meeting/Community/AttestationClaim
        "status": string  // pending/accepted/declined
        "message": string  // Request message by client
        "source": string  // Request source (like roomId/invitationId for invitation)
        "data": { json data }  // Custom JSON data based on request type
    }
    "error": { "status": bool, "code": int, "message": string }
}

User request declined event

Event: request:declined

Data:

{
    "data": {
        "id": string
        "created": timestamp
        "updated": timestamp
        "networkId": string  // Request network id
        "initiatorUserId": string  // Id of user who sent request
        "recipientUserId": string  // Id of user who received request
        "type": string  // Connection/Invitation/Meeting/Community/AttestationClaim
        "status": string  // pending/accepted/declined
        "message": string  // Request message by client
        "source": string  // Request source (like roomId/invitationId for invitation)
        "data": { json data }  // Custom JSON data based on request type
    }
    "error": { "status": bool, "code": int, "message": string }
}

Models


User Request

{
    "id": string
    "created": timestamp
    "updated": timestamp
    "initiatorUserId": string
    "recipientUserId": string
    "type": string  // Connection/Invitation/Matchmaking/Supporter/Recommendation/Meeting
    "status": string  // pending/accepted/declined
    "message": string
    "data": {
        "roomId": string  // parameter is used for Invitation and Recommendation requests
        "invitationId": string  // parameter is used for Invitation request
        "meetingId": string  // parameter is used for Meeting request
        "groupId": string  // parameter is used for Group request
        "communityId": string  // parameter is used for Community request
        "messageId": string  // parameter is used for AttestationClaim request
    }
    "fromUser": { user simple structure }
    "toUser": { user simple structure }
}

User Simple

{
    "id": string
    "firstName": string
    "lastName": string
    "privacyMode": int  // 0 - Default, 1 - Incognito
    "avatar": string
    "avatar3D": {  // field is not returned if empty
        "assetId": string
        "assetSkins": map[string]string  // map of selected skins per variants
        "avatarUrl": string  // url to gbl file (Ready Player Me)
        "avatarUserId": string  // user id for session recovery (Ready Player Me)
    }
    "companyName": string  // name of company that user represents
    "companyTitle": string  // user title in the company
}