Noutați

What You Need To Make Charts With Blockchain.com API

Blockchain.com (formerly Blockchain.info) is a cryptocurrency blockchain explorer service, as well as a cryptocurrency wallet and a cryptocurrency exchange supporting Bitcoin, Bitcoin Cash, and Ethereum. They also provide Bitcoin data charts, statistics, and market information, and a series of APIs (Websockets and REST), for their services. You can connect to their API to buy and sell crypto, consult data, check taxes and, also, charts and statistics. In this article, we will see how simple is to connect with their API using Delphi REST Debbuger and generate graphics with the data provided by them. What does Blockchain.com do? As a cryptocurrency company, Blockchain.com provides a platform for holding, using, managing crypto assets, and exploring cryptocurrency transactions. It also develops financial services standards and infrastructure for cryptocurrencies. The company’s platform provides market data and analytics. It follows cryptocurrency’s aims of being decentralized and anonymous; some of its cryptocurrency products are managed by the end-user and not accessible by Blockchain.com itself. Its main products are its cryptocurrency wallet, exchange, block explorer, and institutional markets offering. Here’s how to use the Blockchain.com API in a desktop or mobile app They provide a series of APIs, that you can check here. We will implement the chart API here. The specific documentation you can see here and all the charts that you can get the data from, you can check here. According to their API, we can have: Full url (with all optional parameters): https://api.blockchain.info/charts/$chartName?timespan=$timespan&rollingAverage=$rollingAverage&start=$start&format=$format&sampled=$sampled Method: GET Parameters: $chartName – Name of the chart you want the data. $timespan – Duration of the chart, default is 1 year for most charts, 1 week for mempool charts. (Optional) $rollingAverage – Duration over which the data should be averaged. (Optional) $start – Datetime at which to start the chart. (Optional) $format – Either JSON or CSV, defaults to JSON. (Optional) $sampled – Boolean set to ‘true’ or ‘false’ (default ‘true’). If true, limits the number of datapoints returned to ~1.5k for performance reasons. (Optional) How do we call the Blockchain.com API in our program? In your Delphi IDE, open the REST Debugger tool. The default method already is the one we need so, now we just need to insert the URL. To make things simple, add the URL without the parameters and click on ‘Send Request’: We got a 200 status code, so everything is fine. If you click in the ‘Tabular Data’ you can see that the result we want is not well-formatted: On the JSON Root Element, insert the word ‘values’. This is our JSON Root and now, it will format the result correctly: Still, on the REST Debugger, copy the components and place them on your form. Now we have the data. We just need to send it to a chart! How to create a Blockchain.com chart Delphi comes with a component called TChart. Find it and place it on your form: Right-click on it, go to Edit Chart -> Add -> Select the ‘Line Chart’ -> uncheck the ‘3D’ option and select OK then CLOSE. Now, we just need to populate it! For that, add a button and on its click event add these lines of code: That is it!! Now you can make graphics from the blockchain.com API, using Delphi! You can check the full code here: https://github.com/checkdigits/delphi_blockchain_chart_example RAD Studio Delphi really lives […]

Read More

How To Achieve Productive Server Side Development

RAD Server is a powerful application and easy to implement infrastructure for rapidly building and deploying services-based applications. RAD Server offers developers the ability to quickly create modern services-based architecture using Delphi and C++ Builder. RAD Server – Foundation to take your existing client/server business logic to REST API endpoints swiftly.  In this post, you will learn about one of the real-world cases of using RAD Server and Delphi FireMonkey to solve problems of containerization, middleware and data abstraction.  Zernpfennig Informatik chooses Delphi to create desktop and mobile apps Zernpfennig Informatik is from Austria and has successfully developed mobile, web, and desktop applications for years. They needed a modern multiplatform solution for Android, iOS, and Windows for the creation of a flexible and modern access system for the newly built recycling and waste collection centers. Why was RAD Studio chosen to provide the middleware infrastructure? RAD Studio with Delphi and RAD Server has proven to be an ideal combination with a short development time. Both the user interface for the mobile apps and back-end programming were solved without any technology break by using the same Delphi programming language. It is a straightforward and clean solution. How could Delphi and RAD Server solve a big challenge The prerequisite was a multiplatform solution that can be downloaded from Android Play Store and Apple App Store. A big obstacle was the direct connection to the back end of the security company, which regulates the access system and the barrier control, and under other conditions, the location determination using the app for general access authorization. RAD Server was the obvious choice for a light yet powerful and agile solution Zernpfennig Informatik developed the access system called Skarabäus. The team successfully launched Skarabäus in a very short development time – 4 months for the design, building, and rollout phases in total. The communication of the app with the RAD Server middleware was facilitated by REST APIs. The combination of Delphi and RAD Server was perfect and ideal for the project’s success. Furthermore, the system-related components were the problem solver for the Skarabäus system.   Here you can watch the whole Skarabäus application in action: Skarabäus is a real-world example of using Delphi + RAD Server As you can see, the team produced an ideal solution which provided rapid application development and an extremely productive ecosystem for developers. The RAD Server as modern middleware enabled secure and technologically high-quality networking of heterogeneous applications without the use of third-party components – a tool that combines all necessary components. Christian Zernpfennig Managing Director If you would like to learn more about success stories and case studies, head over to the Embarcadero Success Stories section now! To read more blog posts on successful projects powered by Delphi, C++ Builder and RAD Server click here: https://blogs.embarcadero.com/category/showcase/

Read More

Learn to Use Powerful SGC WebSockets WebRTC in C++ Builder

Do you want to learn what is Websockets? What is WebRTC? How can we Install and use SGC Websockets WebRTC? Can we use web sockets compatible with HTTP proxies? How do I find easy to use WebRTC components for C++ Builder? Present post answers these questions as below. We have other articles on the blog showing some of the many uses of the Websocket protocol – you can find them by clicking here. What are WebSockets? WebSocket is a communications protocol, was standardized by the IETF as RFC 6455 in 2011, and the WebSocket API in Web IDL is being standardized by the W3C. The WebSocket protocol uses a single TCP connection to provide full-duplex communication channels. WebSocket is compatible with HTTP because of being designed to work over HTTP ports 443 and 80 as well as to support HTTP proxies and intermediaries. The WebSocket handshake uses the HTTP Upgrade header[1] to change from the HTTP protocol to the WebSocket protocol, to achieve this compatibility. That means in a Communication with Websockets, the communication begins with an HTTP request, then upgrades to Websockets protocol using the TCP protocol connection for communication. What is WebRTC? WebRTC (Web Real-Time Communication) is a free, open-source WebSockets communication protocol that provides real-time communication (RTC) between web browsers and mobile applications via simple application programming interfaces (APIs). WebRTC allows direct peer-to-peer communication, eliminating the need to install plugins or download native apps with audio and video communications. How to use WebRTC components for C++ Builder? Sergio Gómez, is an individual developer specializing with Embarcadero tools since 1999. In 2012, he started the eSeGeCe website to provide components for Delphi, CBuilder, and .NET developers. Detailed information about WebRTC can be found on their ESEGECE web page here Installation Download sgc WebRTC from their official eSeGeCe web page here 2. Unpack the zipped file to a folder and got to “sgcWebSockets_cbuilder_C10_4Packages” folder 3. There is a dclsgcWebSocketsC10_4.cbproj which is a package that has sgc WebSockets components. If you have RAD Studio 10.4.x double click on it or open it via RAD Studio 4. In Projects windows on the right side, right click to dclsgcWebSocketsC10_4.bpl and select Build, and again select Install as below, Now you can see Tsgc… WebSockets classes in your Palette. In RAD Studio, select Tools->Options menu and then go to Language->C++->Paths and Directories section, Here, be sure that Windows 32-bit is selected and click the ellipsis “…” button at the right side of System Include path and add libC10_4/win32 or libD10_4/win32 folder to these paths. Also, set the Selected Platform to Windows 64-bit and be sure that Windows 64-bit is selected, Click the … button at the right side of System Include path and add libC10_4/win64 or libD10_4/win64 folder to these paths. If you have a problem adding these please watch their official video in there download page here C++ Builder example of how to use WebSockets Create a new VCL C++ Application and save all project files units into a new folder. From Tools palette add 2 buttons (name ‘Connect‘ and ‘Disconnect‘) and Memo1 as an output Add a sgcWebSocketServer, sgcWebSocketClient and sgcWebRTCServer, 4. Double click to Connect and Disconnect buttons to create their OnClick events. You can use F12 to switch form and code display.5. Select sgcWebSocketServer1, in Object Inspector, goto it’s events double click to OnConnect and OnDisconnect events6. Now we can Activate […]

Read More

How To Deploy Your Apps From RAD Studio To Docker

Docker helps you to simplify and automate the deployment process for your applications effectively. It enables you to package your software in a way that is predictable and consistent. That’s why it has become very popular among development teams around the globe. In this post, you will know the details of deploying your application from RAD Studio to Docker. Let’s dive in. What is Docker? Docker is an open-source containerization platform for building, deploying, and managing applications. It enables you to package apps into containers, which simplifies the delivery significantly. It takes away repetitive tasks from the product development lifecycle to accelerate the process of building applications. Why should you use Docker? Streamlines the development lifecycle for fast and consistent delivery of your applications Supports responsive deployment and scaling Offers a lightweight, fast and cost-effective solution How do I deploy an app from RAD Studio to a Docker container? Deploying from RAD Studio to Docker is pretty simple. You just need to follow these processes: Configure the Project File 1. Create a file, called RADServerDockerDeploy.dpr. It will have the source code of the main file in the project. 2. Next, you have to specify the program. program RADServerDockerDeploy; {$APPTYPE CONSOLE} {$R *.res} program RADServerDockerDeploy;         {$APPTYPE CONSOLE}         {$R *.res} 3. Then you have to use different units, like System.Classes, System.Types, and System.SysUtil. uses System.Classes, System.Types, System.SysUtils, {$IF DEFINED(POSIX)} Posix.Stdlib, {$ENDIF POSIX} IniFiles; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 uses   System.Classes,   System.Types,   System.SysUtils,     {$IF DEFINED(POSIX)}   Posix.Stdlib,   {$ENDIF POSIX}     IniFiles; 4. Now, you have to specify server packages, server module path and target settings path. const SERVER_PACKAGES = ‘Server.Packages’; TARGET_MODULE_PATH = ‘/etc/ems/module.so’; TARGET_SETTINGS_PATH = ‘/etc/ems/emsserver.ini’; const   SERVER_PACKAGES = ‘Server.Packages’;   TARGET_MODULE_PATH = ‘/etc/ems/module.so’;   TARGET_SETTINGS_PATH = ‘/etc/ems/emsserver.ini’; 5. Then you have to define ResStream, IniFile, and LCommand variables. var ResStream: TResourceStream; IniFile: TMemIniFile; {$IF DEFINED(POSIX)} LCommand: String; {$ENDIF} var   ResStream: TResourceStream;   IniFile: TMemIniFile;   {$IF DEFINED(POSIX)}   LCommand: String;   {$ENDIF} 6. Finally, you have to use these lines: begin try // Add your RAD Server resource module .so file via Project|Resources and Images…|Add… // Be sure to set Identifier to Module and Type should be set to RCDATA ResStream := TResourceStream.Create(HInstance, ‘Module’, RT_RCDATA); try ResStream.Position := 0; ResStream.SaveToFile(TARGET_MODULE_PATH); finally ResStream.Free; end; IniFile := TMemIniFile.Create(TARGET_SETTINGS_PATH); IniFile.EraseSection(SERVER_PACKAGES); IniFile.WriteString(SERVER_PACKAGES,TARGET_MODULE_PATH,ExtractFileName(TARGET_MODULE_PATH)); IniFile.UpdateFile; IniFile.Free; {$IF DEFINED(POSIX)} LCommand := ‘service apache2 restart’; _system(PAnsiChar(AnsiString(LCommand))); {$ENDIF POSIX} except on E: Exception do Writeln(E.ClassName, ‘: ‘, E.Message); end; end. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 begin     try       // Add your RAD Server resource module .so file via Project|Resources and Images…|Add…       // Be sure to set Identifier to Module and Type should be set to RCDATA       ResStream := TResourceStream.Create(HInstance, ‘Module’, RT_RCDATA);       try         ResStream.Position := 0;         ResStream.SaveToFile(TARGET_MODULE_PATH);       finally         ResStream.Free;       end;             IniFile […]

Read More

What Is It Like To Be A Developer Joe C. Hecht?

Hello. This article is part of a series where we speak with professional software developers, ask them what it’s like to write code for a living, and perhaps gain a few insights into the software development industry along the way. Today we’re talking to Joe C. Hecht also very well known as “TJoe”. Joe is now tapping out code in the humid heights of Florida although during the course of the interview I found out he is a native Texan who was born and bred not more than five miles away from where I live now. The world of development is much more close-knit than you could ever imagine! Hi Joe, it’s really great to talk to you, thanks for taking the time It’s a great idea! As I said, I am very happy to participate. You’re a very well known name in the Delphi community. For the few who don’t know you, what would be your brief summary of who you are and what you do? Hired Gun Programmer – Have Delphi – Will Debug. Which Embarcadero product(s) do you use a) the most b) regularly? RAD Studio! I use Both Delphi and C++ Builder.  I have every version ever released, installed and ready to go. I get a fair number of clients considering an upgrade from legacy versions, wanting to modernize existing applications, and cross platforms to support macOS and Mobile platforms. Hands down, I recommend RAD Studio as the best cross platform development tool on the planet to get the job done. Embarcadero has really gone “all in” for crossing platforms, for both the compilers and the visual controls. They have done an amazing job, in a market where there is no other comparative tool. Joe, looking suitably tropical How and/or why did you become a developer? I was originally in the commercial printing business.  When the Apple Laserwriter first became available, we needed custom PC printing software.  I started with BASIC, and quickly moved to C.  I was already very impressed with Borland’s Sidekick and Superkey products, so when Borland mailed me about Turbo Pascal, I jumped right in and our productivity skyrocketed.  The rest is history.  Our desktop publishing utility TypeStudio won a PC Magazine award, and software development quickly became much more successful than our printing business. What helped you the most at becoming a developer? My development springboard came with my first modem.  I found the Borland Compuserve forums staffed by the famous TeamB members.  I quickly learned a lot by reading the posts, and then started helping others in the forums. I firmly believe that investing bits of time going through the replies of forum posts (even the ones you are not interested in) often uncovers many hidden coding jewels along the way.  Technical discussions forums are probably the best way to find great answers, since poor answers are usually followed by replies that point out any flaws. Do you think you will ever stop being a developer? If so, what would be next? If not for RAD Studio, I would consider a different profession. I use many different development tools and compilers, on several platforms. For long term development, your IDE becomes your home, and RAD Studio is the only tool I have found that actually makes the overall development experience […]

Read More

Cook your own navigation system with us

Thursday Aug 19, at 15h00 UTC, we invite you to join us for the free webinar where we will show you step by step how to create your own DIY navigation system. At the end of the cooking session, you will have the full source code of the DIY navigation system. Ingredients that will be used during this cooking session are: What you will learn: Get started with TMS WEB Core Create a PWA from Delphi Work with Bootstrap Use Geolocation Call the free openrouteservice service Do REST requests Parse JSON Use Speech Synthesis Use Google Maps with polylines, directions, rotation Deploy a TMS WEB Core client app Your chef in the kitchen during this cooking session is Bruno Fierens, CTO at TMS software and architect of TMS WEB Core. Register now Take advantage of this unique opportunity and be present live during the webinar, use the ability to ask live questions and receive the free full source code of the project! Register here  See you on Thursday!

Read More

New ‘Behind the scenes” webinar series

From next week, we start a new webinar series for you with the working title “Behind the scenes“.With this new series, we want to step out of the box and offer you the chance to dive deeper in what is behind the products you use on a daily basis: Who are the architects, developers, team behind a product? What is the history behind a product? What are the core ideas and architecture behind a product? Why did we decide to develop a specific product? Where is the product going to in the future? What feature we think you should use more? What is a possible use of the product you might not yet have discovered? This is -your- webinar! Within the scope of the webinar, no question will be left unanswered. The Interaction with the webinar host and among webinar attendees will be encouraged (we are actually working hard on the TMS Web Academy infrastructure to facilitate this even more: stay tuned for TMS Web Academy v2.0!). So, take advantage of it to be directly and live in touch with the people behind our products and behind our support and consulting services.  First ‘Behind the scenes’ on Aug 26, 16h00 UTC On Aug 26, 16h00 UTC, we have the first webinar in this series : ‘TMS BIZ: Behind the scenes with Wagner Landgraf’. Our colleague, expert and architect of products like TMS Aurelius, TMS XData will kick-off with a session to have literally a look behind the scenes of what these TMS BIZ products can do for you, why we created them, what features we think you should know about and so much more… Prepare your questions and register! You can register now for this webinar here. To get the maximum value out of this “Behind the scenes” webinar, prepare your questions or you can already discuss and share questions in our Support Center!  More ‘Behind the scenes’ We are eager to learn where your interest is in content for more ‘Behind the scenes’ webinars. Leave your ideas here in the comments section or get in touch and we will get the developer, export, architect, consultant behind your favorite product from behind his work desk and let you take with him a peek behind the scenes of the product.

Read More

The Dark Secrets Of Faster Compilation With Delphi

In this post, we will explore various ways of improving Delphi applications and reducing development time. Moreover, we learn how to debug faster and smarter by using less known but valuable debugger features like groups, thread support, data breakpoints, and more. Faster Parallel Programs Compiler settings for effectively debug Breakpoints Passcount Debugging Multithreaded Programs Exceptions Hardware breakpoints and much more How to write fast parallel programs in Delphi? If you have been following CodeRage Online Developer Conferences, you know about FastMM4 and FastMM5. FastMM5 is a fast replacement memory manager for Embarcadero Delphi applications that scales well across multiple threads and CPU cores, is not prone to memory fragmentation, and supports shared memory without the use of external files. How can I achieve fast programs in Delphi using FastMM? With the newest update of FastMM that is FastMM5, you can achieve 15% higher performance on the single-threaded, and 30% higher on the multithreaded benchmarks. Reasons for slowdown If your Delphi application does not scale on a new multiprocessor, multicore, or multithreaded hardware, the obstacle might be lock contention in the memory allocator. Because threads are fighting for allocators. The obvious solution when the memory manager is slowing you down is to utilize fewer memory allocations that are either preload the memory and then reuse it without releasing it back to the system or change the algorithm in your code. You can find different methods to improve your application. Now it is demonstration time. We have an application here that do some calculations and we do that calculation with several workers to achieve higher performance procedure TForm1.Button1Click(Sender: TObject); begin SpeedTest := TSpeedTest.create(100); SpeedTest.NumWorkers := inpNumWorkers.Value; Button1.Enabled := false; Screen.Cursor := crHourGlass; Form1.Caption := ‘Time = ‘ + SpeedTest.Execute.ToString; SpeedTest.Free; Button1.Enabled := true; Screen.Cursor := crDefault; end; procedure TForm1.Button1Click(Sender: TObject); begin   SpeedTest := TSpeedTest.create(100);   SpeedTest.NumWorkers := inpNumWorkers.Value;     Button1.Enabled := false;   Screen.Cursor := crHourGlass;     Form1.Caption := ‘Time = ‘ + SpeedTest.Execute.ToString;     SpeedTest.Free;   Button1.Enabled := true;   Screen.Cursor := crDefault;   end; As you can see, this is the driver code. It creates a test with some parameters, then sets the number of workers and executes the test with workers. function TSpeedTest.Execute: integer; var i: Integer; StopWatch: TStopwatch; begin Stopwatch := TStopwatch.Create; Stopwatch.Reset; Stopwatch.Start; if fNumWorkers > 1 then Parallel.For(0, fList.Count – 1) .NumTasks(fNumWorkers) .Execute( procedure(i: integer) begin fList[i].Execute; end) else for i := 0 to fList.Count – 1 do fList[i].Execute; Stopwatch.Stop; result := Stopwatch.ElapsedMilliseconds; end; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 function TSpeedTest.Execute: integer; var   i: Integer;   StopWatch: TStopwatch; begin     Stopwatch := TStopwatch.Create;   Stopwatch.Reset;   Stopwatch.Start;     if fNumWorkers > 1 then     Parallel.For(0, fList.Count – 1)     .NumTasks(fNumWorkers)     .Execute(       procedure(i: integer)       begin         fList[i].Execute;       end)     else     for i := 0 to fList.Count – 1 do       fList[i].Execute;     Stopwatch.Stop;   result := Stopwatch.ElapsedMilliseconds; end; In the execute function, it just goes over the list. fList contains 100 items that we created in the constructor. As you can see, it goes over using parallel for loop if there is the worker number given. It is like we are doing some stress test on memory manager to benchmark. Here are the results with 1 and 2 workers: Now with 8 workers, you can see a little […]

Read More

How to Prepare For RAD Studio 11

The RAD Studio 11 release date is fast approaching, and with its support for high DPI screens, a vastly improved user experience and new features for rapid app development, it’s going to change the game for Delphi and C++ developers. Are you and your team ready for the new release? Do you need to prepare at all? What can you do to make the most of this important new release? As Object Pascal and RAD Studio evolve, so should your business. To save you time we’ve put together the most useful suggestions for preparing for the upcoming release of RAD Studio 11. Here they are: 1. Download Marco Cantu’s Free “Object Pascal Handbook” Launch your preparations for RAD Studio 11 by downloading Marco Cantu’s “Object Pascal Handbook” is one of the world’s most popular, thorough and up-to-date books on building apps with Delphi, C++Builder and RAD Studio. It’s also free to download. Get this definitive resource on Object Pascal here: 2. Get Your Free Ticket For The Upcoming “The Desktop First UX Summit 2021” The annual digital event “Desktop First UX Summit” sponsored by Embarcadero Technologies’ RAD Studio, will be held from Monday August 30th, to Friday September 3rd 2021. The Desktop First UX Summit will bring together the brightest minds in UX for panel discussions and webinars around desktop UX. Attendees will have access to content around their favorite development tools and general content on effective User Interface Design and good User Experience. Helping developers prepare their applications for the upcoming release of Windows 11 will also be an important theme, and there will be an early preview of RAD Studio 11. Click here or on the image to register free and save your seat. 3. Take Advantage of Our Promo Offer We have a very special early-bird offer created uniquely for the RAD Studio 11 release. It’s a great opportunity to 1) get the 10.4.2 edition of Delphi, C++Builder or RAD Studio at a discount and 2) prepare your systems for the free upgrade to RAD Studio 11. This means you will not only get the full-featured latest version of any of these IDEs today for a discount, you will also get a two-month extension on your license, which means you will automatically get the new edition, RAD Studio 11, when it is released. The 10.4.2 version is already compatible with the M1 Mac Mini and WIndows 11, so you’re all set from the get-go for the most advanced tech coming out today. We’ve done everything we can to make it easy for you to upgrade your software to the latest editions and benefit from their newest features. What else is there to do? Act Now and Save Big! Jump to the RAD Offer Page 4. Get InterBase Why should you try InterBase? InterBase is Embarcadero’s award-winning SQL database, and it’s a data security and management powerhouse that comes free with RAD Studio. If you haven’t deployed it already, and even if you are currently using a different solution, it pays to give InterBase a try. Its Change Views data tracking technology, which has won an IoT award, its advanced security and encryption capabilities, and the ability to embed and encrypt your data on your device, are features well worth considering for your business. Download the free Developer […]

Read More

Everything You Need To Build A Website Scraping App

The ScrapeStack API was built to offer a simple REST API interface for scraping web pages at scale without having to programatically deal with geolocations, IP blocks or CAPTCHAs. The API supports a series of features essential to web scraping, such as JavaScript rendering, custom HTTP headers, various geo-targets, POST/PUT requests and an option to use premium residential proxies instead of datacenter proxies. In this article we will see how fast and easy it is to use RAD Studio and Delphi to create a Firemonkey multidevide application using the LowCode Wizard in addition to a REST client library to take advantage of ScrapeStack API and retrieve a JSON format response for Website Scrape in real-time. Our RAD Studio and Delphi applications will be able to call the API and request information based on the name of parameters you provide How do I set up the ScrapeStack API? Make sure you refer to ScrapeStack API website – https://ScrapeStack.com/ – and SignUp for the free Plan providing only your email and some basic information (no credit card required). Once you are in the website will redirect you to a Quickstart guide dashboard and your API Access Key will be provided. The Access Key unique, personal and is required to authenticate with the API. Keep it safe! How do I call ScrapeStack API endpoints? Now all we need to do is to call the API base URL http://api.scrapeStack.com/ via a HTTP POST method with no JSON request body needed and some few requested parameters added to the URL address depending on the endpoint we choose to call. One can do that using REST Client libraries available on several programming languages. scrapeStack offers a single endpoint to scrape whatever webpage you want. For a complete and detailed information on endpoint and its parameters make sure you refer to ScrapeStack Quickstart guide at https://scrapeStack.com/quickstart // Scrape web page by providing a URL http://api.scrapestack.com/scrape ? access_key = YOUR_ACCESS_KEY & url = https://apple.com // optional parameters: & render_js = 0 & keep_headers = 0 & proxy_location = us & premium_proxy = 0 // more parameters available please refer to the API Documentation (https://scrapeStack.com/documentation) // Scrape web page by providing a URL http://api.scrapestack.com/scrape ? access_key = YOUR_ACCESS_KEY & url = https://apple.com   // optional parameters: & render_js = 0 & keep_headers = 0 & proxy_location = us & premium_proxy = 0 // more parameters available please refer to the API Documentation (https://scrapeStack.com/documentation) What does the ScrapeStack API endpoint return? After the call the main results will be the complete scrape of the website that you provided in the parameter URL. In this case we provided Embarcadero’s website https://www.embarcadero.com – part of the result is shown in the screenshot below. How do I connect my Delphi applications to ScrapeStack API? Once you have followed basic steps to set up the ScrapeStack API we need to make sure we are able to connect and communicate with it before we start writing some code. RAD Studio Delphi and C++Builder make it very easy to connect to APIs as you can you REST Debugger to automatically create the REST components and paste them into your app. In Delphi all the job is done using 3 components tot make the API call. They are the TRESTClient, TRESTRequest, and TRESTResponse. Once you connect the […]

Read More