The OAuth 2.0 JWT Bearer Token flow is a good choice for server to server communication where you don't want any user interaction. The communication is secured via a pre-created certificate. Scroll down this Digging Deeper into OAuth 2.0 on Force.com article and you'll see this flow discussed.
There is sample Java code and sample Apex code available and you should be able to create a solution in other languages of your choice providing the necessary cryptography logic is available.
You can definitely use workbench to execute these
Use the below for the request
/services/data/v34.0/composite/tree/Account
and in the body use the below JSON
{
"records" :[{
"attributes" : {"type" : "Account", "referenceId" : "ref1"},
"name" : "SampleAccount1",
"phone" : "1111111111",
"website" : "www.salesforce1.com",
"numberOfEmployees" : "100",
"industry" : "Banking"
},{
"attributes" : {"type" : "Account", "referenceId" : "ref2"},
"name" : "SampleAccount2",
"phone" : "2222222222",
"website" : "www.salesforce2.com",
"numberOfEmployees" : "250",
"industry" : "Banking"
},{
"attributes" : {"type" : "Account", "referenceId" : "ref3"},
"name" : "SampleAccount3",
"phone" : "3333333333",
"website" : "www.salesforce3.com",
"numberOfEmployees" : "52000",
"industry" : "Banking"
},{
"attributes" : {"type" : "Account", "referenceId" : "ref4"},
"name" : "SampleAccount4",
"phone" : "4444444444",
"website" : "www.salesforce4.com",
"numberOfEmployees" : "2500",
"industry" : "Banking"
}]
}
You should see the response in workbench
Alternatively you can use POSTMAN to experiment with this API .
You will need to create a connected app in salesforce and use oauth 2.0 to get access token for subsequent calls
use the below link for reference
Best Answer
The batchSize limit (200-2000) will be applied to a REST API query. Note that this is a "suggestion" to the server; it may alter the batch size if there are many fields or large fields that are queried. See the Query Options Header for more information. In general, you can query up to 50,000,000 records in a REST API query, but they will be paged at most every 2,000 records.