apps

GET https://www.daniweb.com/connect/api/v2/apps

Fetch all Daniapps that are currently in production mode.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "about": {
                "description": "string",
                "name": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "id": "int32"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/apps/{ID}

Fetch an array of Daniapps that are currently in production mode.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "about": {
                "description": "string",
                "name": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "id": "int32"
        }
    ]
}

A valid response utilizes the following object models:

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

audiences

GET https://www.daniweb.com/connect/api/v2/audiences

Fetch all Daniapp audience segments that comprise the current access token's bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "about": {
                "name": "string"
            },
            "id": "int32"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Bubble

{
    "about": {
        "name": "string"
    },
    "id": "int32"
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/audiences/{ID}

Fetch an array of Daniapp audience segments that comprise the current access token's bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "about": {
                "name": "string"
            },
            "id": "int32"
        }
    ]
}

A valid response utilizes the following object models:

Bubble

{
    "about": {
        "name": "string"
    },
    "id": "int32"
}

autocomplete

GET https://www.daniweb.com/connect/api/v2/autocomplete/search

Retrieve an array of names and locations, filtered by category, that begin with the query string passed in. Ideally used for search autocomplete dropdowns, as the search functionality filters against name and location. The four potential categories are: `conversations` for names of users you are in existing conversations with; `matches` for names of users you have previously skipped over; `people` for names of all other users; `locations` for locations of users. Only users and their locations who exist with the current access token's bubble are considered.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
query string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "conversations": [
            "string"
        ],
        "locations": [
            "string"
        ],
        "matches": [
            "string"
        ],
        "people": [
            "string"
        ]
    }
}

conversations

GET https://www.daniweb.com/connect/api/v2/conversations/report

Retrieve conversations that you are participating in with users who exists within the same bubble, along with your current relationship with the conversations. The user_a / user_b properties of the conversation are populated with as much data as is available if the user is not you. If the user is you, only the id field is populated. There is a separate status endpoint to retrieve relationship information for individual conversations. Optionally filter: 'new' to only show conversations with messages you haven't yet seen; 'introductions' to only show conversations where users have introduced themselves to you but nothing more; 'unreplied' to only show conversations where you have introduced yourself to other users but nothing more; 'notifications' to show all conversations where the other user was the last person to message. Optionally only show conversations engaging within the existing access token's bubble. This report is limited to your ~500-1000 most recently active conversations you've engaged in within current the access token's bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
filter [ new, introductions, unreplied, notifications ] no
include_archived boolean false no
bubbled boolean false no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "archived_status": "boolean",
            "bubbled": {
                "latest_message": {
                    "author": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    },
                    "conversation": {
                        "first_message": {
                            "timestamp": "date-time",
                            "user": {
                                "id": "int32"
                            }
                        },
                        "id": "int32",
                        "latest_message": {
                            "id": "int32"
                        },
                        "user_a": {
                            "id": "int32"
                        },
                        "user_b": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32",
                            "picture": "string",
                            "profile": {
                                "first_name": "string",
                                "headline": "string",
                                "industry": "string",
                                "last_name": "string",
                                "pitch": "string",
                                "website": {
                                    "thumbshot": "string",
                                    "url": "uri"
                                }
                            },
                            "thumbnail": "string",
                            "usage": {
                                "available_status": "boolean",
                                "joined_timestamp": "date-time",
                                "last_activity_timestamp": "date-time",
                                "online_status": "boolean"
                            }
                        }
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                }
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "conversation": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "user_a": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "user_b": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "earliest_unseen_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "new_message_count": "int32"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/conversations/schedule

Paginated report of information about messages contributed by conversation and date. Only conversations that exist within the current access token's bubble are considered in the calculations. Optionally roll up all conversations to retrieve one record per date. Optionally specify a date formatted as YYYY-MM-DD to retrieve information just from the single date, along with additional navigational information, which is useful when generating a transcript for a single day and wanting to reference the previous and next days there were messages.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
sort [ asc, desc ] desc no
roll_up boolean false no
date string no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author_count": "int32",
            "conversation_count": "int32",
            "conversation_id": "int32",
            "date": "date",
            "first_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "last_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "message_count": "int32",
            "my_message_count": "int32",
            "navigation": {
                "earliest_date": "date",
                "next_date": "date",
                "previous_date": "date"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/conversations/search

Fetch messages that you've written that match a query string passed in as a search parameter along with their relevancy score. You can only retrieve messages that were authored from within the same bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
query string required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "relevance": {
                "score": "float"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/conversations/{ID}

Fetch an array of conversations. You can only retrieve conversations with users who exist within the same bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "first_message": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "conversation": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "user_a": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "user_b": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ]
}

A valid response utilizes the following object models:

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

POST https://www.daniweb.com/connect/api/v2/conversations/{ID}/archive

Archive an active conversation that is with a user who exists within the same bubble. By default, a conversations report does not include archived conversations.

The OAuth flow must request these permission scopes:

conversations_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32"
    },
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/conversations/{ID}/poll

Retrieve the last {limit} messages in the conversation, provided the conversations exist within the current access token's bubble. The batch is sorted oldest first. Specify a timeout for long polling (which delays the server sending back results for up to n seconds or until results are available, whichever comes first), or default to 0 for immediate results. Optionally record your status as online along with sharing the latest message you've seen with the other conversation participant. Specify a gt_message_id to retrieve only messages with an ID greater than that specified (such as greater than the latest message ID received in the last poll). Optionally only poll for messages authored by the other person in the conversation, and echo messages authored by you when sending, for a perceived increase in performance. Optionally only retrieve messages that were posted from within the current access token's bubble. All parameters may be set with GET with the exception of record_seen, as it updates your status in the database. When record_seen is set to true, the new message count for the conversation is reset to zero.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
gt_message_id int32 no
exclude_self boolean false no
bubbled boolean false no
record_seen boolean false no
timeout int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "user_a": {
                    "id": "int32"
                },
                "user_b": {
                    "id": "int32"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ]
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

POST https://www.daniweb.com/connect/api/v2/conversations/{ID}/post

Post a message to a conversation that is with a user who exists within the current access token's bubble. Optionally specify whether emoticons should be parsed into smiley images. Additionally, optionally attach a single metadata key/value pair to the message upon submission.

The OAuth flow must request these permission scopes:

conversations_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
message string required
emoticons boolean false no
metadata_key string no
metadata_values[] string list no
metadata_privacy [ Public, Private, Bubbled, User ] no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "author": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        },
        "conversation": {
            "first_message": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "conversation": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "user_a": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "user_b": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        },
        "id": "int32",
        "text": {
            "parsed": "string",
            "raw": "string"
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

GET https://www.daniweb.com/connect/api/v2/conversations/{ID}/schedule

Paginated report of information about messages contributed by conversation and date. Only conversations that exist within the current access token's bubble are considered in the calculations. Optionally roll up all conversations to retrieve one record per date. Optionally specify a date formatted as YYYY-MM-DD to retrieve information just from the single date, along with additional navigational information, which is useful when generating a transcript for a single day and wanting to reference the previous and next days there were messages within the conversation(s).

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required
sort [ asc, desc ] desc no
roll_up boolean false no
date string no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author_count": "int32",
            "conversation_count": "int32",
            "conversation_id": "int32",
            "date": "date",
            "first_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "last_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "message_count": "int32",
            "my_message_count": "int32",
            "navigation": {
                "earliest_date": "date",
                "next_date": "date",
                "previous_date": "date"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/conversations/{ID}/search

Fetch messages within specific conversations that match a query string passed in as a search parameter along with their relevancy score. You can only retrieve messages authored by users who exist within within the same bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required
query string required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "relevance": {
                "score": "float"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/conversations/{ID}/status

Status information about your current relationship with one or more conversations you participating in, provided the conversations exist within the current access token's bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "archived_status": "boolean",
            "bubbled": {
                "latest_message": {
                    "author": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    },
                    "conversation": {
                        "first_message": {
                            "timestamp": "date-time",
                            "user": {
                                "id": "int32"
                            }
                        },
                        "id": "int32",
                        "latest_message": {
                            "id": "int32"
                        },
                        "user_a": {
                            "id": "int32"
                        },
                        "user_b": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32",
                            "picture": "string",
                            "profile": {
                                "first_name": "string",
                                "headline": "string",
                                "industry": "string",
                                "last_name": "string",
                                "pitch": "string",
                                "website": {
                                    "thumbshot": "string",
                                    "url": "uri"
                                }
                            },
                            "thumbnail": "string",
                            "usage": {
                                "available_status": "boolean",
                                "joined_timestamp": "date-time",
                                "last_activity_timestamp": "date-time",
                                "online_status": "boolean"
                            }
                        }
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                }
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "conversation": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "user_a": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "user_b": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "earliest_unseen_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "new_message_count": "int32"
        }
    ]
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

GET https://www.daniweb.com/connect/api/v2/conversations/{ID}/transcript

Paginated transcript of messages in the conversation, provided the conversation exists within the current access token's bubble. Messages are sorted oldest to newest. Optionally specify a gt_message_id to retrieve only messages with an ID greater than that specified. Optionally specify a date formatted as YYYY-MM-DD to retrieve a transcript of messages from a single day. Optionally only retrieve messages that were posted from within the current access token's bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
gt_message_id int32 no
date string no
bubbled boolean false no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "user_a": {
                    "id": "int32"
                },
                "user_b": {
                    "id": "int32"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/conversations/{ID}/unarchive

Unarchive a conversation that is with a user who exists within the same bubble. By default, a conversations report does not include archived conversations.

The OAuth flow must request these permission scopes:

conversations_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32"
    },
    "success": "boolean"
}

groups

GET https://www.daniweb.com/connect/api/v2/groups

Fetch an array of all groups that were created by users existing within the current access token's bubble. The groups must be either Public or you must be a member of them. Unlisted and Private groups that you are not a member of are not listed.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "earliest_unseen_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "group": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "moderated": {
                        "deleted_status": "boolean"
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "membership_status": "boolean",
            "new_message_count": "int32"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/groups/create

Create a new group for other members to join. Any user who is using an access token whose bubble you exist in can join your group provided it is not a private group. Private groups can only be joined by members who know its passphrase. Unlisted groups can be joined by anybody as long as they know the Group ID, but they are not referenced anywhere to non-members. Public groups can be joined by anybody, are discoverable, and anyone can see the public groups a user is a member of, provided the group owner exists in their access token's bubble. Groups each have their own discussions, transcripts, schedules, and ability to list and search their members.

The OAuth flow must request these permission scopes:

groups_read groups_write

This endpoint accepts the following parameters:

Name Type Default Required
name string required
slug string required
description string required
privacy [ Public, Unlisted, Private ] required
passphrase string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "author": {
                "id": "int32"
            },
            "group": {
                "id": "int32"
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32"
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

GET https://www.daniweb.com/connect/api/v2/groups/messages/metadata/search

Paginated listing of messages filtered by arbitrary metadata criteria. Metadata key/value pairs are passed in via the query string. Messages must match on all key/value pairs passed in. Messages may only match on one value of an array passed in. For example, ` ? a=b & c[]=d & c[]=e ` will filter on all messages where the key `a` has a value of b, but the key `c` may have a value of either d or e. However, messages are sorted based on how many distinct values they match on (most matches first).

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
* string required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "matched_metadata": [
                "string"
            ],
            "message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/groups/messages/{ID}

Fetch an array of group messages. You can only retrieve messages authored by you or by users existing within the same bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32"
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ]
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

GET https://www.daniweb.com/connect/api/v2/groups/messages/{ID}/metadata

Retrieve all key/value pairs attached to the current message that you have access to, so long as the user who created the group exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "app": {
                "about": {
                    "description": "string",
                    "name": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "id": "int32"
            },
            "content": {
                "key": "string",
                "value": "string"
            },
            "id": "int32",
            "message": {
                "author": {
                    "id": "int32"
                },
                "group": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "settings": {
                "privacy": "string"
            },
            "status": {
                "last_updated_timestamp": "date-time"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message_data

{
    "app": {
        "about": {
            "description": "string",
            "name": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "id": "int32"
    },
    "content": {
        "key": "string",
        "value": "string"
    },
    "id": "int32",
    "message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "settings": {
        "privacy": "string"
    },
    "status": {
        "last_updated_timestamp": "date-time"
    }
}

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/groups/messages/{ID}/metadata/attach

Attach one-to-many key/value pairs of metadata to a group message, so long as the user who authored the message exists within the current access token's bubble and you are a member of their group. You can set one key at a time, with one or many values. A key is unique for each author/bubble combination. Attaching metadata with an existing key that was previously created by you, from within the same bubble, overwrites the key with the new value or set of values. The privacy setting allows you to specify who will have access to the metadata: Public metadata by anyone using an access token which grants them access to the user who authored the message and who is also a member of the group the message belongs to; Bubbled metadata by anyone using an access token existing within the current bubble who is also a member of the group the message belongs to; User metadata by you, so long as you are using an access token which grants you access to the user who authored the message and you remain a member of the group; Private metadata by you, so long as you are using an access token existing within the current bubble and you remain a member of the group.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
key string required
values[] string list required
privacy [ Public, Private, Bubbled, User ] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ],
    "success": "boolean"
}

GET https://www.daniweb.com/connect/api/v2/groups/messages/{ID}/metadata/grouped

Retrieve all key/value pairs attached to the current message that you have access to, so long as the user who created the group exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble. Metadata will be grouped by key.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ]
}

GET https://www.daniweb.com/connect/api/v2/groups/report

Retrieve groups that you are a member of that were created by users within the current access token's bubble, along with your current relationship with the groups. There is a separate status endpoint to retrieve relationship information for individual groups.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "earliest_unseen_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "group": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "moderated": {
                        "deleted_status": "boolean"
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "new_message_count": "int32"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/groups/schedule

Paginated report of information about messages contributed by group and date. Only groups you're a member of and group messages authored by users the current access token has access to are considered in the calculations. Optionally roll up all groups to retrieve one record per date. Optionally specify a date formatted as YYYY-MM-DD to retrieve information just from the single date, along with additional navigational information, which is useful when generating a transcript for a single day and wanting to reference the previous and next days there were messages.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
sort [ asc, desc ] desc no
roll_up boolean false no
date string no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author_count": "int32",
            "date": "date",
            "first_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "group_count": "int32",
            "group_id": "int32",
            "last_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "message_count": "int32",
            "my_message_count": "int32",
            "navigation": {
                "earliest_date": "date",
                "next_date": "date",
                "previous_date": "date"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/groups/{ID}

Fetch an array of groups. You can only retrieve groups created by users existing within the same bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "first_message": {
                "timestamp": "date-time"
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "group": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "member_count": "int32",
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "properties": {
                "description": "string",
                "name": "string",
                "privacy": "string",
                "slug": "string"
            }
        }
    ]
}

A valid response utilizes the following object models:

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

POST https://www.daniweb.com/connect/api/v2/groups/{ID}/join

Join a group that was created by a user who exists within the current access token's bubble. If the group is private, you must successfully pass in its passphrase in order to join. You can obtain the passphrase from the group's owner.

The OAuth flow must request these permission scopes:

groups_read groups_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
passphrase string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32"
    },
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/groups/{ID}/leave

Leave a group that you are a member of and that was created by a user who exists within the current access token's bubble.

The OAuth flow must request these permission scopes:

groups_read groups_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32"
    },
    "success": "boolean"
}

GET https://www.daniweb.com/connect/api/v2/groups/{ID}/members

Fetch an array of users who are members of specific groups that you are also a member of. You can only retrieve users existing within the same bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required
offset int32 0 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/groups/{ID}/modify

Modify a group you previously created.

The OAuth flow must request these permission scopes:

groups_read groups_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
name string no
slug string no
description string no
privacy [ Public, Unlisted, Private ] no
passphrase string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "author": {
                "id": "int32"
            },
            "group": {
                "id": "int32"
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32"
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

POST https://www.daniweb.com/connect/api/v2/groups/{ID}/poll

Retrieve the last {limit} messages in the group, for messages authored by users within the current access token's bubble. The batch is sorted oldest first. Specify a timeout for long polling (which delays the server sending back results for up to n seconds or until results are available, whichever comes first), or default to 0 for immediate results. Optionally record your status as online along with sharing the latest message you've seen with other group members. Specify a gt_message_id to retrieve only messages with an ID greater than that specified (such as greater than the latest message ID received in the last poll). Optionally only poll for messages authored by other members of the group, and echo messages authored by you when sending, for a perceived increase in performance. All parameters may be set with GET with the exception of record_seen, as it updates your status in the database. When record_seen is set to true, the new message count for the group is reset to zero.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
gt_message_id int32 0 no
exclude_self boolean false no
include_deleted boolean false no
record_seen boolean false no
timeout int32 0 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32"
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ]
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

POST https://www.daniweb.com/connect/api/v2/groups/{ID}/post

Post a message to a group that you are a member of and that was created by a user who exists within the current access token's bubble. Optionally specify whether emoticons should be parsed into smiley images. Additionally, optionally attach a single metadata key/value pair to the group message upon submission.

The OAuth flow must request these permission scopes:

groups_read groups_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
message string required
emoticons boolean false no
metadata_key string no
metadata_values[] string list no
metadata_privacy [ Public, Private, Bubbled, User ] no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "author": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        },
        "group": {
            "first_message": {
                "timestamp": "date-time"
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "group": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "member_count": "int32",
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "properties": {
                "description": "string",
                "name": "string",
                "privacy": "string",
                "slug": "string"
            }
        },
        "id": "int32",
        "text": {
            "parsed": "string",
            "raw": "string"
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

GET https://www.daniweb.com/connect/api/v2/groups/{ID}/schedule

Paginated report of information about group messages contributed by conversation and date. Only groups you're a member of and group messages authored by users existing within the current access token's bubble are considered in the calculations. Optionally roll up all groups to retrieve one record per date. Optionally specify a date formatted as YYYY-MM-DD to retrieve information just from the single date, along with additional navigational information, which is useful when generating a transcript for a single day and wanting to reference the previous and next days there were messages within the group discussion(s).

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required
sort [ asc, desc ] desc no
roll_up boolean false no
date string no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author_count": "int32",
            "date": "date",
            "first_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "group_count": "int32",
            "group_id": "int32",
            "last_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "message_count": "int32",
            "my_message_count": "int32",
            "navigation": {
                "earliest_date": "date",
                "next_date": "date",
                "previous_date": "date"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/groups/{ID}/status

Status information about your current relationship with one or more groups you are a member of, provided the users who created the groups exist within the current access token's bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "earliest_unseen_message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "group": {
                    "first_message": {
                        "timestamp": "date-time"
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "member_count": "int32",
                    "owner": {
                        "id": "int32"
                    },
                    "properties": {
                        "description": "string",
                        "name": "string",
                        "privacy": "string",
                        "slug": "string"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "group": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "moderated": {
                        "deleted_status": "boolean"
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "membership_status": "boolean",
            "new_message_count": "int32"
        }
    ]
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

GET https://www.daniweb.com/connect/api/v2/groups/{ID}/transcript

Paginated transcript of messages in the group authored by users who exist within the current access token's bubble. Messages are sorted oldest to newest. Optionally specify a gt_message_id to retrieve only messages with an ID greater than that specified. Optionally specify a date formatted as YYYY-MM-DD to retrieve a transcript of messages from a single day. Optionally only retrieve messages that were posted from within the current access token's bubble.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
gt_message_id int32 no
date string no
bubbled boolean false no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32"
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

industries

GET https://www.daniweb.com/connect/api/v2/industries

The OAuth flow must request these permission scopes:

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ]
}

markdown

GET https://www.daniweb.com/connect/api/v2/markdown/emoticons

The OAuth flow must request these permission scopes:

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "alt": "string",
            "emoticon": "string",
            "image": "string"
        }
    ]
}

GET https://www.daniweb.com/connect/api/v2/markdown/parse

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
message string required
emoticons boolean false no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "parsed": "string",
        "raw": "string"
    }
}

messages

GET https://www.daniweb.com/connect/api/v2/messages/metadata/search

Paginated listing of messages filtered by arbitrary metadata criteria. Metadata key/value pairs are passed in via the query string. Messages must match on all key/value pairs passed in. Messages may only match on one value of an array passed in. For example, ` ? a=b & c[]=d & c[]=e ` will filter on all messages where the key `a` has a value of b, but the key `c` may have a value of either d or e. However, messages are sorted based on how many distinct values they match on (most matches first).

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
* string required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "matched_metadata": [
                "string"
            ],
            "message": {
                "author": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "conversation": {
                    "first_message": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "id": "int32",
                    "latest_message": {
                        "id": "int32"
                    },
                    "user_a": {
                        "id": "int32"
                    },
                    "user_b": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/messages/{ID}

Fetch an array of messages. You can only retrieve messages authored by you or by users who exist within the same bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "user_a": {
                    "id": "int32"
                },
                "user_b": {
                    "id": "int32"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ]
}

A valid response utilizes the following object models:

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

GET https://www.daniweb.com/connect/api/v2/messages/{ID}/metadata

Retrieve all key/value pairs attached to the current message that you have access to, so long as the user who authored the message exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "app": {
                "about": {
                    "description": "string",
                    "name": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "id": "int32"
            },
            "content": {
                "key": "string",
                "value": "string"
            },
            "id": "int32",
            "message": {
                "author": {
                    "id": "int32"
                },
                "conversation": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "settings": {
                "privacy": "string"
            },
            "status": {
                "last_updated_timestamp": "date-time"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Message_data

{
    "app": {
        "about": {
            "description": "string",
            "name": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "id": "int32"
    },
    "content": {
        "key": "string",
        "value": "string"
    },
    "id": "int32",
    "message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "settings": {
        "privacy": "string"
    },
    "status": {
        "last_updated_timestamp": "date-time"
    }
}

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/messages/{ID}/metadata/attach

Attach one-to-many key/value pairs of metadata to a message, so long as the user who authored the message exists within the current access token's bubble. You can set one key at a time, with one or many values. A key is unique for each author/bubble combination. Attaching metadata with an existing key that was previously created by you, from within the same bubble, overwrites the key with the new value or set of values. The privacy setting allows you to specify who will have access to the metadata: Public metadata by you or the other user in the message's conversation, using an access token which grants you access to the user who authored the message, if it wasn't you; Bubbled metadata by you or the other user in the message's conversation, using an access token existing within the current bubble; User metadata by you, so long as you are using an access token which grants you access to the user who authored the message, if it wasn't you; Private metadata by you, so long as you are using an access token existing within the current bubble.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
key string required
values[] string list required
privacy [ Public, Private, Bubbled, User ] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ],
    "success": "boolean"
}

GET https://www.daniweb.com/connect/api/v2/messages/{ID}/metadata/grouped

Retrieve all key/value pairs attached to the current message that you have access to, so long as the user who authored the message exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble. Metadata will be grouped by key.

The OAuth flow must request these permission scopes:

conversations_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ]
}

positions

POST https://www.daniweb.com/connect/api/v2/positions/delete/{ID}

Remove an item from the OAuth'ed end user's Curriculum Vitae.

The OAuth flow must request these permission scopes:

profile_read profile_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/positions/record

Update the OAuth'ed end user's Curriculum Vitae by adding a position.

The OAuth flow must request these permission scopes:

profile_read profile_write

This endpoint accepts the following parameters:

Name Type Default Required
category [ Experience, Education, Awards, Affiliations, Portfolio ] required
role string required
organization string required
organization_size [ Self-employed, 2 - 9 Employees, 10 - 49 Employees, 50 - 99 Employees, 100 - 499 Employees, 500 - 999 Employees, 1000 - 4999 Employees, 5000+ Employees, Don't Know ] no
position [ Executive Management (C-level), VP-level Executive, Manager / Director / Supervisor, Systems Development, Software Development, Web Developer, IT Consultant, Technical Support, Sales, Other technology related, Other non-technology related, Student, Retired ] no
start_date string required
end_date string no
summary string no
url string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "end_date": "date",
        "id": "int32",
        "organization": "string",
        "organization_size": "string",
        "position": "string",
        "role": "string",
        "start_date": "date",
        "summary": "string",
        "url": "uri"
    },
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/positions/{ID}/modify

Update the OAuth'ed end user's Curriculum Vitae by modifying an existing position.

The OAuth flow must request these permission scopes:

profile_read profile_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
category [ Experience, Education, Awards, Affiliations, Portfolio ] required
role string required
organization string required
organization_size [ Self-employed, 2 - 9 Employees, 10 - 49 Employees, 50 - 99 Employees, 100 - 499 Employees, 500 - 999 Employees, 1000 - 4999 Employees, 5000+ Employees, Don't Know ] no
position [ Executive Management (C-level), VP-level Executive, Manager / Director / Supervisor, Systems Development, Software Development, Web Developer, IT Consultant, Technical Support, Sales, Other technology related, Other non-technology related, Student, Retired ] no
start_date string required
end_date string no
summary string no
url string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "end_date": "date",
        "id": "int32",
        "organization": "string",
        "organization_size": "string",
        "position": "string",
        "role": "string",
        "start_date": "date",
        "summary": "string",
        "url": "uri"
    },
    "success": "boolean"
}

users

POST https://www.daniweb.com/connect/api/v2/users/invite

Invite users to into your current access token's bubble by having Dazah send out email invitations on your behalf. The invitation sends users to begin the OAuth flow for the current application (based on the settings specified in the application's profile), and therefore they will be redirected to the application upon signing up / logging in. Upon doing so, if they aren't already, they will automatically be connected with you as well. If your current access token does not escape the bubble, the invitation will specify you wish to connect within the application's name. If your current access token escapes the bubble, the invitation will specify you wish to connect within Dazah. Submit either a list of emails, or a LinkedIn or Outlook CSV file. You can retrieve your LinkedIn CSV file by exporting your LinkedIn Connections at https://www.linkedin.com/people/export-settings. You can retrieve your Outlook CSV file by using the Outlook Import and Export Wizard. This endpoint buckets the invitations into four categories: Existing invites are existing users who are already connected with you within the current bubble, and are therefore not emailed; Discovered invites are existing Dazah users who are available to be connected with within the current bubble, and are therefore not emailed. Now that they have been discovered, the users/{:ID}/meet API endpoint may be used to connect with them; Invalid invites are existing Dazah users who are unavailable to be connected with, because they have deactivated accounts, are muting you, etc., and are therefore not emailed; Emailed invites are queued to receive an invitation within approximately 1 hour. Note that if you are attempting to invite an existing Dazah user who does not currently exist within your current access token's bubble, they will fall within the Discovered bucket if your current access token escapes the bubble, but will be emailed an invitation to join the application if your current access token does not escape the bubble.

The OAuth flow must request these permission scopes:

profile_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
emails[] string list no
csv binary no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "invites": {
            "discovered": {
                "users": [
                    {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                ]
            },
            "emailed": {
                "emails": [
                    "string"
                ]
            },
            "existing": {
                "conversations": [
                    {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                ]
            },
            "invalid": {
                "emails": [
                    "string"
                ]
            }
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

GET https://www.daniweb.com/connect/api/v2/users/matches

Fetch your 100 best algorithmic matches, based on: Complementary data submitted to Profiles, CVs, and Metadata; Complementary data acquired from third-parties; Location information; Many behavioral data points, such as how responsive users are to connections; Degrees of separation (mutual connections); etc. You may connect with 3 of these algorithmic matches per day for free. However, new members are allowed a grace period of additional daily matches. Each time you choose to meet or mute one of your algorithmic matches, a new match is introduced.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
bubbled boolean false no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/met

Fetch an array of users that you've met. You can only retrieve users existing within the same bubble. This report is limited to the last ~500-1000 users you've communicated with within the access token's bubble.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
order_by [ id, last_activity, first_name, last_name, industry ] id no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/metadata/search

Paginated listing of users filtered by arbitrary metadata criteria. Metadata key/value pairs are passed in via the query string. Users must match on all key/value pairs passed in. Users may only match on one value of an array passed in. For example, ` ? a=b & c[]=d & c[]=e ` will filter on all users where the key `a` has a value of b, but the key `c` may have a value of either d or e. However, users are sorted based on how many distinct values they match on (most matches first).

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
* string required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "matched_metadata": [
                "string"
            ],
            "user": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/muted

Fetch an array of users that you've muted. You cannot be matched with or meet muted users. You can only retrieve users existing within the same bubble.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
order_by [ id, last_activity, first_name, last_name, industry ] id no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/nearby

Fetch an array of users that are geographically close to a set of coordinates. You can only retrieve users existing within the same bubble.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
latitude float no
longitude float no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "distance_away": {
                "miles": "float"
            },
            "user": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/search

Filter and perform a weighted search against user profile fields, CV fields, and metadata by specifying a string to search on for each individual field. By default, results are filtered such that all words in the string must exist, unless you seprate the words with OR. To perform a weighted search (as opposed to filtering), you can preface the string with a number from 0 to 100, followed by a colon, to specify the weight the search algorithm should assign to the field. You can search against metadata by preceding the metadata key with metadata_. For example, `Country=United States & First Name=10:Bob & metadata_tags=php OR mysql & pitch=50:linux` will match on all users who are in the United States and are skilled at either PHP, MySQL or both. Additionally, it will sort the users meeting that criteria by giving a 10X boost to users named Bob and a 50X boost to users who mentioned Linux in their elevator pitch. You can optionally exclude users who you are already in conversations with, exclude users who you previously skipped, or exclude users who you are muting. By doing so, you can effectively customize your own matching algorithm. You can also choose to only receive users originating from the current access token's bubble. Only users existing within the bubble will be matched, and you can only search within a group created by a bubbled user.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
first_name string no
last_name string no
headline string no
pitch string no
cv_role string no
cv_organization string no
cv_summary string no
industry string no
city string no
region string no
country string no
group_id int32 no
metadata_* string no
exclude_muted boolean false no
exclude_skipped boolean false no
exclude_connections boolean false no
bubbled boolean false no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "relevance": {
                "score": "float"
            },
            "user": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/skipped

Fetch an array of matches that you've skipped over. Skipped matches are only presented as algorithmic matches after all other candidates have been exhausted. You can only retrieve users existing within the same bubble.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
order_by [ id, last_activity, first_name, last_name, industry ] id no
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}

Fetch an array of users. You can only retrieve users existing within the same bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    ]
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/cv

Retrieve the CV of a user who exists within the current access token's bubble. You will receive an error message unless either the current access token is bubbled, the user is an algorithmic match for you and you have not reached your quota of new introductions for the day, or you have paid to meet them. You can only record CV data to your own account. However, any app that you have OAuth'ed against can do so. By default, you will receive CV data that all apps have recorded for the user. Optionally, you can choose to only receive data that the current access token's bubble has recorded.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
bubbled boolean false no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "Affiliations": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Awards": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Education": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Experience": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Portfolio": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ]
    }
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/groups

Note that You can only retrieve groups that were created by users existing within the same bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "first_message": {
                "timestamp": "date-time"
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "group": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "moderated": {
                    "deleted_status": "boolean"
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "member_count": "int32",
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "properties": {
                "description": "string",
                "name": "string",
                "privacy": "string",
                "slug": "string"
            }
        }
    ]
}

A valid response utilizes the following object models:

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/groups/messages

Paginated transcript of group messages authored by an individual user who exists within the current access token's bubble. Messages are sorted oldest to newest.

The OAuth flow must request these permission scopes:

groups_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "author": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "group": {
                "first_message": {
                    "timestamp": "date-time"
                },
                "id": "int32",
                "latest_message": {
                    "id": "int32"
                },
                "member_count": "int32",
                "owner": {
                    "id": "int32"
                },
                "properties": {
                    "description": "string",
                    "name": "string",
                    "privacy": "string",
                    "slug": "string"
                }
            },
            "id": "int32",
            "last_seen": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "moderated": {
                "deleted_status": "boolean"
            },
            "text": {
                "parsed": "string"
            },
            "timestamp": "date-time"
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

Group_message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "group": {
        "first_message": {
            "timestamp": "date-time"
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "member_count": "int32",
        "owner": {
            "id": "int32"
        },
        "properties": {
            "description": "string",
            "name": "string",
            "privacy": "string",
            "slug": "string"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "moderated": {
        "deleted_status": "boolean"
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Group

{
    "first_message": {
        "timestamp": "date-time"
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "group": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "moderated": {
            "deleted_status": "boolean"
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "member_count": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "properties": {
        "description": "string",
        "name": "string",
        "privacy": "string",
        "slug": "string"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/match

Determine your match relationship with one or more users who exist within the current access token's bubble. Under some conditions, the price to meet the user will be $0. However, if this is not the case, the PayPal URL payment method will be provided along with the price to meet the user. The PayPal API can be leveraged to send payments programatically, provided the parameters passed in remain the same to ensure that the payment is correctly recorded. Once the payment has been recorded via PayPal IPN, the price to meet the user changes to $0. You can then call the users/{:ID}/meet endpoint to meet the user.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
{ID} comma-delimited int32 list [max. 100 items] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "additional": {
                "cv_items_count": "int32",
                "metadata_count": "int32"
            },
            "conversation": {
                "first_message": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32",
                        "picture": "string",
                        "profile": {
                            "first_name": "string",
                            "headline": "string",
                            "industry": "string",
                            "last_name": "string",
                            "pitch": "string",
                            "website": {
                                "thumbshot": "string",
                                "url": "uri"
                            }
                        },
                        "thumbnail": "string",
                        "usage": {
                            "available_status": "boolean",
                            "joined_timestamp": "date-time",
                            "last_activity_timestamp": "date-time",
                            "online_status": "boolean"
                        }
                    }
                },
                "id": "int32",
                "latest_message": {
                    "author": {
                        "id": "int32"
                    },
                    "conversation": {
                        "id": "int32"
                    },
                    "id": "int32",
                    "last_seen": {
                        "timestamp": "date-time",
                        "user": {
                            "id": "int32"
                        }
                    },
                    "text": {
                        "parsed": "string"
                    },
                    "timestamp": "date-time"
                },
                "user_a": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                },
                "user_b": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "match": {
                "algorithmic_match": "boolean",
                "complementary_goals": [
                    "string"
                ],
                "distance_away": {
                    "miles": "float"
                },
                "industry": {
                    "complementary": "boolean",
                    "mutual_match": "boolean",
                    "similar": "boolean"
                },
                "mutual_connections": {
                    "count": "int32"
                },
                "recommendation_strength": "float"
            },
            "meet": {
                "payment": {
                    "paypal": {
                        "url": "uri"
                    }
                },
                "price_usd": "float"
            },
            "relationship": {
                "existing_bubbled_conversation": "boolean",
                "existing_conversation": "boolean",
                "muted": "boolean",
                "skipped": "boolean"
            }
        }
    ]
}

A valid response utilizes the following object models:

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/meet

Initiate a conversation with a user who exists within the current access token's bubble by sending them an introductory message. You will receive an error message unless it is currently free for you to meet the user. You will also receive an error message if you are already in a conversation with them. You can use the users/{:IDS}/match endpoint to first determine if the user isn't already in a conversation with you and is free for you to meet and, if they aren't, how to pay to meet them.

The OAuth flow must request these permission scopes:

profile_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
message string no
emoticons boolean false no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "conversation": {
            "first_message": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "conversation": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "user_a": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "user_b": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/message

This endpoint combines the functionality of users/{:ID}/meet and conversations/{:ID}/post. It sends a message to the user, and if you aren't already in a conversation with them, it meets them first, and then sends the message. Note that if you aren't in an existing conversation, you still must meet the criteria to meet them, meaning the user must currently be free for you to meet. Unlike the users/{:ID}/meet endpoint, this endpoint requires a message and will not default to your custom introductory message defined in your settings. Unlike the conversations/{:ID}/post endpoint, this endpoint does not accept metadata.

The OAuth flow must request these permission scopes:

profile_read conversations_write

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
message string required
emoticons boolean false no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "conversation": {
            "first_message": {
                "timestamp": "date-time",
                "user": {
                    "id": "int32",
                    "picture": "string",
                    "profile": {
                        "first_name": "string",
                        "headline": "string",
                        "industry": "string",
                        "last_name": "string",
                        "pitch": "string",
                        "website": {
                            "thumbshot": "string",
                            "url": "uri"
                        }
                    },
                    "thumbnail": "string",
                    "usage": {
                        "available_status": "boolean",
                        "joined_timestamp": "date-time",
                        "last_activity_timestamp": "date-time",
                        "online_status": "boolean"
                    }
                }
            },
            "id": "int32",
            "latest_message": {
                "author": {
                    "id": "int32"
                },
                "conversation": {
                    "id": "int32"
                },
                "id": "int32",
                "last_seen": {
                    "timestamp": "date-time",
                    "user": {
                        "id": "int32"
                    }
                },
                "text": {
                    "parsed": "string"
                },
                "timestamp": "date-time"
            },
            "user_a": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "user_b": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

Conversation

{
    "first_message": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "id": "int32",
    "latest_message": {
        "author": {
            "id": "int32"
        },
        "conversation": {
            "id": "int32"
        },
        "id": "int32",
        "last_seen": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "text": {
            "parsed": "string"
        },
        "timestamp": "date-time"
    },
    "user_a": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "user_b": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Message

{
    "author": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "conversation": {
        "first_message": {
            "timestamp": "date-time",
            "user": {
                "id": "int32"
            }
        },
        "id": "int32",
        "latest_message": {
            "id": "int32"
        },
        "user_a": {
            "id": "int32"
        },
        "user_b": {
            "id": "int32"
        }
    },
    "id": "int32",
    "last_seen": {
        "timestamp": "date-time",
        "user": {
            "id": "int32",
            "picture": "string",
            "profile": {
                "first_name": "string",
                "headline": "string",
                "industry": "string",
                "last_name": "string",
                "pitch": "string",
                "website": {
                    "thumbshot": "string",
                    "url": "uri"
                }
            },
            "thumbnail": "string",
            "usage": {
                "available_status": "boolean",
                "joined_timestamp": "date-time",
                "last_activity_timestamp": "date-time",
                "online_status": "boolean"
            }
        }
    },
    "text": {
        "parsed": "string"
    },
    "timestamp": "date-time"
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/metadata

Retrieve all key/value pairs attached to the current user that you have access to, so long as the user exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble. You will receive an error message unless either the current access token is bubbled, the user is an algorithmic match for you and you have not reached your quota of new introductions for the day, or you have paid to meet them. However, you can always use the /users/metadata/search endpoint to filter across all users, including those that are unmatched, existing within the current access token's bubble based on preknown metadata key/value pairs.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
offset int32 0 no
limit int32 50 no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "app": {
                "about": {
                    "description": "string",
                    "name": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "id": "int32"
            },
            "content": {
                "key": "string",
                "value": "string"
            },
            "id": "int32",
            "owner": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            },
            "settings": {
                "privacy": "string"
            },
            "status": {
                "last_updated_timestamp": "date-time"
            },
            "user": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ],
    "pagination": {
        "limit": "int32",
        "offset": "int32",
        "total_records": "int32"
    }
}

A valid response utilizes the following object models:

User_data

{
    "app": {
        "about": {
            "description": "string",
            "name": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "id": "int32"
    },
    "content": {
        "key": "string",
        "value": "string"
    },
    "id": "int32",
    "owner": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "settings": {
        "privacy": "string"
    },
    "status": {
        "last_updated_timestamp": "date-time"
    },
    "user": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

Api-pagination

{
    "limit": "int32",
    "offset": "int32",
    "total_records": "int32"
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/metadata/attach

Attach one-to-many key/value pairs of metadata to a user, so long as the user exists within the current access token's bubble. You can set one key at a time, with one or many values. A key is unique for each author/bubble combination. Attaching metadata with an existing key that was previously created by you, from within the same bubble, overwrites the key with the new value or set of values. The privacy setting allows you to specify who will have access to the metadata: Public metadata by anyone using an access token which grants them access to the user; Bubbled metadata by anyone using an access token existing within the current bubble; User metadata by you, so long as you are using an access token which grants you access to the user; Private metadata by you, so long as you are using an access token existing within the current bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required
key string required
values[] string list required
privacy [ Public, Private, Bubbled, User ] required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ],
    "success": "boolean"
}

GET https://www.daniweb.com/connect/api/v2/users/{ID}/metadata/grouped

Retrieve all key/value pairs attached to the current user that you have access to, so long as the user exists within the current access token's bubble. This includes all public metadata, bubbled metadata that was created by an access token existing within the current bubble, user metadata that was created by you, or private metadata created by you from an access token existing within the current bubble. You will receive an error message unless either the current access token is bubbled, the user is an algorithmic match for you and you have not reached your quota of new introductions for the day, or you have paid to meet them. However, you can always use the /users/metadata/search endpoint to filter across all users, including those that are unmatched, existing within the current access token's bubble based on preknown metadata key/value pairs. Metadata will be grouped by key.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        "string"
    ]
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/mute

Mute a user. You cannot be matched with or meet muted users. You can only mute users existing within the same bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/skip

Skip a user you've been matched with. Skipped matches are only presented as algorithmic matches after all other candidates have been exhausted. You can only skip users existing within the same bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/users/{ID}/unmute

Unmute a user. You cannot be matched with or meet muted users. You can only unmute users existing within the same bubble.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
{ID} int32 required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "success": "boolean"
}

GET https://www.daniweb.com/connect/api/v2/users/~

Retrieve the currently OAuth'ed end-user, based on the access token being used, including private information and settings such as their email address.

The OAuth flow must request these permission scopes:

profile_read

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32",
        "location": {
            "city": "string",
            "country": "int32",
            "ip_address": "string",
            "latitude": "string",
            "longitude": "string",
            "region": "string"
        },
        "matching": {
            "goals": [
                "string"
            ],
            "location_importance": "string",
            "targeted_industry": "string"
        },
        "personal": {
            "birthday": "string"
        },
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "introduction": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "settings": {
            "email": "string",
            "email_verified": "boolean",
            "notifications": "string",
            "timezone": "int32"
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

A valid response utilizes the following object models:

Me

{
    "id": "int32",
    "location": {
        "city": "string",
        "country": "int32",
        "ip_address": "string",
        "latitude": "string",
        "longitude": "string",
        "region": "string"
    },
    "matching": {
        "goals": [
            "string"
        ],
        "location_importance": "string",
        "targeted_industry": "string"
    },
    "personal": {
        "birthday": "string"
    },
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "introduction": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "settings": {
        "email": "string",
        "email_verified": "boolean",
        "notifications": "string",
        "timezone": "int32"
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

GET https://www.daniweb.com/connect/api/v2/users/~/cv

Retrieve the currently OAuth'ed end-user's CV. You can only record CV data to your own account. However, any app that you have OAuth'ed against can do so. By default, you will receive CV data that all apps have recorded for you. Optionally, you can choose to only receive data that the current access token's bubble has recorded.

The OAuth flow must request these permission scopes:

profile_read

This endpoint accepts the following parameters:

Name Type Default Required
bubbled boolean false no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "Affiliations": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Awards": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Education": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Experience": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ],
        "Portfolio": [
            {
                "end_date": "date",
                "id": "int32",
                "organization": "string",
                "organization_size": "string",
                "position": "string",
                "role": "string",
                "start_date": "date",
                "summary": "string",
                "url": "uri"
            }
        ]
    }
}

POST https://www.daniweb.com/connect/api/v2/users/~/update

Update the OAuth'ed end user's account profile. At this time, for anti-spam reasons, restrictions preclude the ability to update email address and some other settings via the API.

The OAuth flow must request these permission scopes:

profile_read profile_write

This endpoint accepts the following parameters:

Name Type Default Required
first_name string no
last_name string no
headline string no
industry [ Accounting, Airlines/Aviation, Alternative Dispute Resolution, Alternative Medicine, Animation, Apparel & Fashion, Architecture & Planning, Arts and Crafts, Automotive, Aviation & Aerospace, Banking, Biotechnology, Broadcast Media, Building Materials, Business Supplies and Equipment, Capital Markets, Chemicals, Civic & Social Organization, Civil Engineering, Commercial Real Estate, Computer & Network Security, Computer Games, Computer Hardware, Computer Networking, Computer Software, Construction, Consumer Electronics, Consumer Goods, Consumer Services, Cosmetics, Dairy, Defense & Space, Design, E-Learning, Education Management, Electrical/Electronic Manufacturing, Entertainment, Environmental Services, Events Services, Executive Office, Facilities Services, Farming, Financial Services, Fine Art, Fishery, Food & Beverages, Food Production, Fund-Raising, Furniture, Gambling & Casinos, Glass, Ceramics & Concrete, Government Administration, Government Relations, Graphic Design, Health, Wellness and Fitness, Higher Education, Hospital & Health Care, Hospitality, Human Resources, Import and Export, Individual & Family Services, Industrial Automation, Information Services, Information Technology and Services, Insurance, International Affairs, International Trade and Development, Internet, Investment Banking, Investment Management, Judiciary, Law Enforcement, Law Practice, Legal Services, Legislative Office, Leisure, Travel & Tourism, Libraries, Logistics and Supply Chain, Luxury Goods & Jewelry, Machinery, Management Consulting, Maritime, Market Research, Marketing and Advertising, Mechanical or Industrial Engineering, Media Production, Medical Devices, Medical Practice, Mental Health Care, Military, Mining & Metals, Motion Pictures and Film, Museums and Institutions, Music, Nanotechnology, Newspapers, Non-Profit Organization Management, Oil & Energy, Online Media, Outsourcing/Offshoring, Package/Freight Delivery, Packaging and Containers, Paper & Forest Products, Performing Arts, Pharmaceuticals, Philanthropy, Photography, Plastics, Political Organization, Primary/Secondary Education, Printing, Professional Training & Coaching, Program Development, Public Policy, Public Relations and Communications, Public Safety, Publishing, Railroad Manufacture, Ranching, Real Estate, Recreational Facilities and Services, Religious Institutions, Renewables & Environment, Research, Restaurants, Retail, Security and Investigations, Semiconductors, Shipbuilding, Sporting Goods, Sports, Staffing and Recruiting, Supermarkets, Telecommunications, Textiles, Think Tanks, Tobacco, Translation and Localization, Transportation/Trucking/Railroad, Utilities, Venture Capital & Private Equity, Veterinary, Warehousing, Wholesale, Wine and Spirits, Wireless, Writing and Editing ] no
pitch string no
tags[] string list no
url string no
company string no
job_position [ Executive Management (C-level), VP-level Executive, Manager / Director / Supervisor, Systems Development, Software Development, Web Developer, IT Consultant, Technical Support, Sales, Other technology related, Other non-technology related, Student, Retired ] no
company_size [ Self-employed, 2 - 9 Employees, 10 - 49 Employees, 50 - 99 Employees, 100 - 499 Employees, 500 - 999 Employees, 1000 - 4999 Employees, 5000+ Employees, Don't Know ] no
targeted_industry [ Accounting, Airlines/Aviation, Alternative Dispute Resolution, Alternative Medicine, Animation, Apparel & Fashion, Architecture & Planning, Arts and Crafts, Automotive, Aviation & Aerospace, Banking, Biotechnology, Broadcast Media, Building Materials, Business Supplies and Equipment, Capital Markets, Chemicals, Civic & Social Organization, Civil Engineering, Commercial Real Estate, Computer & Network Security, Computer Games, Computer Hardware, Computer Networking, Computer Software, Construction, Consumer Electronics, Consumer Goods, Consumer Services, Cosmetics, Dairy, Defense & Space, Design, E-Learning, Education Management, Electrical/Electronic Manufacturing, Entertainment, Environmental Services, Events Services, Executive Office, Facilities Services, Farming, Financial Services, Fine Art, Fishery, Food & Beverages, Food Production, Fund-Raising, Furniture, Gambling & Casinos, Glass, Ceramics & Concrete, Government Administration, Government Relations, Graphic Design, Health, Wellness and Fitness, Higher Education, Hospital & Health Care, Hospitality, Human Resources, Import and Export, Individual & Family Services, Industrial Automation, Information Services, Information Technology and Services, Insurance, International Affairs, International Trade and Development, Internet, Investment Banking, Investment Management, Judiciary, Law Enforcement, Law Practice, Legal Services, Legislative Office, Leisure, Travel & Tourism, Libraries, Logistics and Supply Chain, Luxury Goods & Jewelry, Machinery, Management Consulting, Maritime, Market Research, Marketing and Advertising, Mechanical or Industrial Engineering, Media Production, Medical Devices, Medical Practice, Mental Health Care, Military, Mining & Metals, Motion Pictures and Film, Museums and Institutions, Music, Nanotechnology, Newspapers, Non-Profit Organization Management, Oil & Energy, Online Media, Outsourcing/Offshoring, Package/Freight Delivery, Packaging and Containers, Paper & Forest Products, Performing Arts, Pharmaceuticals, Philanthropy, Photography, Plastics, Political Organization, Primary/Secondary Education, Printing, Professional Training & Coaching, Program Development, Public Policy, Public Relations and Communications, Public Safety, Publishing, Railroad Manufacture, Ranching, Real Estate, Recreational Facilities and Services, Religious Institutions, Renewables & Environment, Research, Restaurants, Retail, Security and Investigations, Semiconductors, Shipbuilding, Sporting Goods, Sports, Staffing and Recruiting, Supermarkets, Telecommunications, Textiles, Think Tanks, Tobacco, Translation and Localization, Transportation/Trucking/Railroad, Utilities, Venture Capital & Private Equity, Veterinary, Warehousing, Wholesale, Wine and Spirits, Wireless, Writing and Editing ] no
match_tags[] string list no
goals[] string list no
location_importance [ Yes, Somewhat, No ] no
introduction string no

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    },
    "success": "boolean"
}

A valid response utilizes the following object models:

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

webhooks

GET https://www.daniweb.com/connect/api/v2/webhooks

Retrieve a listing of all webhooks owned by the current user/bubble combination.

The OAuth flow must request these permission scopes:

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": [
        {
            "app": {
                "about": {
                    "description": "string",
                    "name": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "id": "int32"
            },
            "event": {
                "action": "string"
            },
            "id": "int32",
            "name": "string",
            "object": {
                "type": "string"
            },
            "uri": "uri",
            "user": {
                "id": "int32",
                "picture": "string",
                "profile": {
                    "first_name": "string",
                    "headline": "string",
                    "industry": "string",
                    "last_name": "string",
                    "pitch": "string",
                    "website": {
                        "thumbshot": "string",
                        "url": "uri"
                    }
                },
                "thumbnail": "string",
                "usage": {
                    "available_status": "boolean",
                    "joined_timestamp": "date-time",
                    "last_activity_timestamp": "date-time",
                    "online_status": "boolean"
                }
            }
        }
    ]
}

A valid response utilizes the following object models:

Webhook

{
    "app": {
        "about": {
            "description": "string",
            "name": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "id": "int32"
    },
    "event": {
        "action": "string"
    },
    "id": "int32",
    "name": "string",
    "object": {
        "type": "string"
    },
    "uri": "uri",
    "user": {
        "id": "int32",
        "picture": "string",
        "profile": {
            "first_name": "string",
            "headline": "string",
            "industry": "string",
            "last_name": "string",
            "pitch": "string",
            "website": {
                "thumbshot": "string",
                "url": "uri"
            }
        },
        "thumbnail": "string",
        "usage": {
            "available_status": "boolean",
            "joined_timestamp": "date-time",
            "last_activity_timestamp": "date-time",
            "online_status": "boolean"
        }
    }
}

App

{
    "about": {
        "description": "string",
        "name": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "id": "int32"
}

User

{
    "id": "int32",
    "picture": "string",
    "profile": {
        "first_name": "string",
        "headline": "string",
        "industry": "string",
        "last_name": "string",
        "pitch": "string",
        "website": {
            "thumbshot": "string",
            "url": "uri"
        }
    },
    "thumbnail": "string",
    "usage": {
        "available_status": "boolean",
        "joined_timestamp": "date-time",
        "last_activity_timestamp": "date-time",
        "online_status": "boolean"
    }
}

POST https://www.daniweb.com/connect/api/v2/webhooks/delete

Delete a webhook that was previously registered by the current user/bubble combination. The name of the webhook can be retrieved by calling the webhooks endpoint to retrieve a listing of all active webhooks.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
name string required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "success": "boolean"
}

POST https://www.daniweb.com/connect/api/v2/webhooks/register

Register a new webhook for the current user/bubble combination. Specify an object_id to only be notified on an event related to that specific Conversation ID, Group ID, or User ID. Your access token must have access to the user being tracked, user you are in the conversation with, or user who created the group. You must be connected with a user in order to keep track of their online status. Alternatively, do not specify an object_id to be notified on all events that are related to conversations you're in, groups you're a member of, or users you are in conversations with. You may only have one webhook for each object_id/event. The webhook URI must reside on your own server. Webhooks do not expire when the access token used to create them expires. However, they will temporarily cease to function if the user who created them deauthorizes access to the application (effectively no longer existing within the bubble), unless/until the user reauthorizes the application using OAuth.

The OAuth flow must request these permission scopes:

This endpoint accepts the following parameters:

Name Type Default Required
name string required
bubbled boolean false no
object_id int32 no
event [ conversation_message, conversation_seen, group_update, group_message, group_seen, user_online, user_update ] required
uri string required

This endpoint returns a valid response in the following format. As always, sample responses include all possible data that may be returned. It should never be assumed that a property exists in a response.

{
    "data": {
        "name": "string"
    },
    "success": "boolean"
}