Memento Cloud REST API available for Beta Testing

2,046 views
Skip to first unread message

admin

unread,
Apr 17, 2017, 4:28:20 PM4/17/17
to mementodatabase
Hello everyone! 
Memento Cloud REST API available for Beta Testing.
If you are interested in testing the Memento Cloud API, send request to sup...@mementodatabase.com.
Regards, Vasiliy.

Idan Elingold

unread,
Apr 21, 2017, 1:43:38 AM4/21/17
to mementodatabase
Hi. Can you explain for the simple user what is the memento cloud rest api and ehat is it good for?
Thanks.
Idan.

admin

unread,
Apr 21, 2017, 11:25:12 AM4/21/17
to mementodatabase
The API provides access to Memento data for third-party software developers.

What will simple users receive?  API will allow integration with Zapier
You can integrate Memento with any of the Zapier supported applications.
Zapier supported apps, such as Gmail, Slack, MailChimp, Trello, Google Calendar, PostgreSQL and over 750 more.
Beta testing this integration will be launched soon.

Regards, Vasiliy.

Message has been deleted

John C

unread,
Apr 25, 2017, 11:22:29 AM4/25/17
to mementodatabase
Sweet.

Equand

unread,
Apr 27, 2017, 8:32:10 AM4/27/17
to mementodatabase
Just a little nitpick, program is in alpha stage when the functions and parameters can change:

The Memento Cloud API is currently in an alpha status. All available functions, their parameters and responses may change in the future.
Message has been deleted

Bill Crews

unread,
Jun 1, 2017, 5:59:09 AM6/1/17
to mementodatabase
He might answer you here, but a request like this would normally be an email to sup...@MementoDatabase.com.

roberto dal maso

unread,
Aug 28, 2017, 12:48:09 PM8/28/17
to mementodatabase
Hello everybody,
any news about this? I would like to join the testing but I don't have the necessary skills...
If anyone is willing to give some help, my goal is to write a routine in VBA (MsAccess 2013) that deletes all entries in 2 libraries and then creates "x" entries in the same libraries (a sort of CRUD operations), since my need is to "sync" some data with Memento, data which is stored in MsAccess tables and I think this is the "easiest" way (these tables have a max of 100 records each). I've found these resources: https://github.com/VBA-tools/VBA-JSON
and https://github.com/VBA-tools/VBA-Web but I absolutely can't do it by myself.
Any sort of help, suggestion or else would be very appreciated, thanks.

Alexander Lobanov

unread,
Dec 15, 2017, 2:38:56 AM12/15/17
to mementodatabase
Sub Get_Memento_Lib(LibId As String, oHttpRequest As WinHttpRequest, oConverter As Converter, oRecordset As DAO.Recordset)

    Const Mementoserver As String = "https://mementoserver-hrd.appspot.com/v1/libraries/"
    Const Token As String = "?token=xxxxxxxxxxx"

    Dim JsonObj As Dictionary
    Dim oDictionary As Dictionary
    Dim oCollection As Collection
    Dim oCollection2 As Collection
    Dim oHeader As Collection
        
    Dim url As String
    Dim i As Long
    Dim j As Long
    
    Dim tmpstr As String
    Dim FieldName As String
    Dim tmpDate As Date
    
    Dim Feld As DAO.Field2
    Dim Item As Variant
    Dim Item2 As Variant
          
    url = Mementoserver & LibId & Token
        
    Call oHttpRequest.Open("GET", url)
    Call oHttpRequest.send
    
    If oHttpRequest.responseText = "" Then
        MsgBox "NOk"
        Exit Sub
    End If
            
    Set JsonObj = oConverter.ParseJson(oHttpRequest.responseText)
    
    If JsonObj.Exists("fields") Then
        Set oCollection = JsonObj.Item("fields")
        Set oHeader = New Collection
        For i = 1 To oCollection.Count
            oHeader.Add oCollection(i), CStr(oCollection(i).Item("id"))
        Next
    Else
        MsgBox "NOk"
        Exit Sub
    End If
    
    url = Mementoserver & LibId & "/entries" & Token & "&fields=all&pageSize=100000"
      
    Call oHttpRequest.Open("GET", url)
    Call oHttpRequest.send
    
    If oHttpRequest.responseText = "" Then
        MsgBox "NOk"
        Exit Sub
    End If
    
    Set JsonObj = oConverter.ParseJson(oHttpRequest.responseText)

    If JsonObj.Exists("entries") Then
    
        Set oCollection = JsonObj.Item("entries")
                                
        For i = 1 To oCollection.Count
            If oCollection.Item(i).Item("status") = "active" Then
            
                Set oCollection2 = oCollection(i).Item("fields")
                
                oRecordset.AddNew
                oRecordset("ID") = oCollection(i).Item("id")
                               
                For j = 1 To oCollection2.Count
                                        
                    Set oDictionary = oHeader.Item(CStr(oCollection2.Item(j).Item("id")))
                    FieldName = CStr(oDictionary.Item("name"))
                    
                    On Error Resume Next
                    Set Feld = Nothing
                    Set Feld = oRecordset.Fields(FieldName)
                    
                    If Feld Is Nothing Then
                        'Debug.Print FieldName
                    Else
                        tmpstr = ""
                        
                        Select Case oDictionary.Item("type")
                        Case "date"
                            oRecordset(CStr(oDictionary.Item("name"))) = CDate(Left(oCollection2.Item(j).Item("value"), 10))
                        Case "entries"
                           For Each Item In oCollection2.Item(j).Item("value")
                                If tmpstr = "" Then
                                    tmpstr = """" & Item & """"
                                Else
                                    tmpstr = tmpstr & ";" & """" & Item & """"
                                End If
                           Next
                           oRecordset(CStr(oDictionary.Item("name"))) = tmpstr
                       'Case "calc"
                        Case "file"
                        Case "js"
                            tmpstr = oCollection2.Item(j).Item("value")
                            oRecordset(CStr(oDictionary.Item("name"))) = tmpstr
                        Case Else
                            tmpstr = oCollection2.Item(j).Item("value")
                            oRecordset(CStr(oDictionary.Item("name"))) = oCollection2.Item(j).Item("value")
                        End Select
                    
                    End If
                    
                Next
                
                oRecordset.Update
            End If
        Next
        
    End If
 
    Set JsonObj = Nothing
    Set oCollection = Nothing
    Set oCollection2 = Nothing
      
End Sub

roberto dal maso

unread,
Dec 16, 2017, 2:27:57 AM12/16/17
to mementodatabase
Thanks a lot Alexander, I will try it asap

Laura Szczuczak

unread,
Dec 19, 2017, 1:02:52 AM12/19/17
to mementodatabase
Hi everyone

I am also trying to use the API and I was wondering if anyone was able to get the content of all entries of a library at once? I am able to get the content of entries one by one but I am struggling to all of them at the same time..

Any advice would be much appreciated!

Best,

Laura

John C

unread,
Mar 19, 2018, 8:30:33 AM3/19/18
to mementodatabase
wow! More than a "little" help.

Ashwar Sadh

unread,
May 17, 2018, 3:07:42 PM5/17/18
to mementodatabase
Hello,
  I want to report that Attributes of a Link to Entry field are not accessible from API.
Please provide a way to access them, as they are the part of data.
Kindly let us know a way or post an update to the API

Henry Scott

unread,
Aug 19, 2018, 5:20:28 AM8/19/18
to mementodatabase
Any Target Date for  the API to be a Production Version?
Reply all
Reply to author
Forward
0 new messages