function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Neha AggrawalNeha Aggrawal 

TeamUp Http Request

Hi,

I am calling teamup API from Salesforce to get events data. This is my apex code:
global class EventsTeamUp {
@future(callout=true)
    Public Static Void UpdateEvents(){
         HttpRequest req = new HttpRequest();
        HttpResponse res = new HttpResponse();
        String result;
        Http http = new Http();
        datetime dt=System.now();
     	dt=dt-(1);
		String d=dt.format('yyyy-MM-dd');
		List<Event> eventlist = new List<Event>();
        
        req.setMethod('GET' );
        req.setEndpoint('https://api.teamup.com/ks6mg6ziqj7cgg84qz/events?startDate='+d+'&endDate='+d);
        Blob headerValue = Blob.valueOf('teamup-token' + ':' + 'e1bb9869fab6320f4ff7ca23eeb48b80a9e113396b903d794d9e3fcaf857ff3f');
     String authorizationHeader = 'BASIC ' +
     EncodingUtil.base64Encode(headerValue);
     req.setHeader('Authorization', 'authorizationHeader');
        try{
        res=http.send(req);
        result=res.getBody();
Map<String, String> values = (Map<String, String>)
    JSON.deserialize(res.getBody(), Map<String, String>.class);
        System.debug(values);
        for(String key : values.keySet())
        {
           Event e= new Event(IsAllDayEvent=Boolean.valueOf(values.get('all_day')), Subject=values.get('title'), StartDateTime=DateTime.parse(values.get('start_dt')), EndDateTime=DateTime.parse(values.get('end_dt')), Location=values.get('location'), Description=values.get('notes')+'Invitees:'+values.get('who'));
            eventlist.add(e);
        }
        insert eventlist;
        }
    
    catch(Exception e)
    {
       System.debug('The following exception has occurred: ' + e.getMessage()); 
    }
}
}

I am getting 403 Forbidden error. This is the request sent from Adavnced Rest Client, where I am getting back the event details successfully.

User-added image

Any help is appreciated.
Thanks.
Best Answer chosen by Neha Aggrawal
Ramesh DRamesh D
@Neha,
Here is the working code Please try this 
global class EventsTeamUp {
    @future(callout=true)
    Public Static Void UpdateEvents(){
        HttpRequest req = new HttpRequest();
        HttpResponse res = new HttpResponse();
        String result;
        Http http = new Http();
        datetime dt=System.now();
        dt=dt-(1);
        String d=dt.format('yyyy-MM-dd');
        List<Event> eventlist = new List<Event>();
        
        req.setMethod('GET' );
        string endpoint='https://api.teamup.com/ks6mg6ziqj7cgg84qz/events?startDate='+d+'&endDate='+d;
       // System.debug(endpoint);
        req.setEndpoint(endpoint);       
        req.setHeader('teamup-token', 'e1bb9869fab6320f4ff7ca23eeb48b80a9e113396b903d794d9e3fcaf857ff3f');       
        res=http.send(req);
        result=res.getBody();
        System.debug('Status Code: '+res.getStatusCode());
        System.debug(result);
        
    }
}

Result:
User-added image

Thanks
Ramesh

All Answers

Ramesh DRamesh D
@Neha,
Here is the working code Please try this 
global class EventsTeamUp {
    @future(callout=true)
    Public Static Void UpdateEvents(){
        HttpRequest req = new HttpRequest();
        HttpResponse res = new HttpResponse();
        String result;
        Http http = new Http();
        datetime dt=System.now();
        dt=dt-(1);
        String d=dt.format('yyyy-MM-dd');
        List<Event> eventlist = new List<Event>();
        
        req.setMethod('GET' );
        string endpoint='https://api.teamup.com/ks6mg6ziqj7cgg84qz/events?startDate='+d+'&endDate='+d;
       // System.debug(endpoint);
        req.setEndpoint(endpoint);       
        req.setHeader('teamup-token', 'e1bb9869fab6320f4ff7ca23eeb48b80a9e113396b903d794d9e3fcaf857ff3f');       
        res=http.send(req);
        result=res.getBody();
        System.debug('Status Code: '+res.getStatusCode());
        System.debug(result);
        
    }
}

Result:
User-added image

Thanks
Ramesh
This was selected as the best answer
Neha AggrawalNeha Aggrawal
Thanks,
That worked.