---
schema_version: "1"
id: e63d63793b56641616ab7b1ffc0bafb266f59f9aa6abaa2d4bcb1cbf1fea264c
title: Using cURL
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/platform/api-asynch/guides/api-bulk-v2/example/walkthrough-using-curl.md
canonical_url: https://developer.salesforce.com/docs/platform/api-asynch/guide/walkthrough-using-curl.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: de715eab4a9673d9bbb5ff18e440cacc967f740ac5a66ed36f2fd2ba3d10bc35
products:
  - Bulk API 2.0 and Bulk API Developer Guide
  - Platform Developer Content
---

# Using cURL

Get to know the formatting used with cURL to place calls to Salesforce orgs. This Quick Start uses cURL examples to issue Bulk API 2.0 calls, but you can use any tool or development environment that can make REST requests.

Familiarize yourself with cURL enough to be able to understand the examples in this guide and translate them into the tool that you’re using. You’ll be attaching files containing the body of the request and must properly format the access token. For more information about cURL, see the documentation at [curl.se](https://curl.se/).

**Attach Request Bodies**

Many examples include request bodies—JSON or XML files that contain data for the request. When using cURL, save these files to your local system and attach them to the request using the `—data-binary` or `-d` option.

This example attaches the `new-account.json` file.

```nolang
curl https://MyDomainName.my.salesforce.com/services/data/v68.0/sobjects/Account/ -H 'Authorization: Bearer 00DE0X0A0M0PeLE!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE' -H "Content-Type: application/json" —d @new-account.json -X POST
```

**Handle Exclamation Marks in Access Tokens**

When you run cURL examples, you can get an error on macOS and Linux systems due to the presence of the exclamation mark (!) in OAuth access tokens. To avoid getting this error, either escape the exclamation mark or use single quotes. To escape the exclamation mark in the access token, insert a backslash before it when the access token is enclosed within double quotes.

```nolang
\!
```

For example, the access token string in this cURL command has the exclamation mark (!) escaped.

```nolang
curl https://MyDomainName.my.salesforce.com/services/data/v68.0/ -H "Authorization: Bearer 00DE0X0A0M0PeLE\!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE"
```

Or, you can enclose the access token within single quotes to not escape the exclamation mark.

```nolang
curl https://MyDomainName.my.salesforce.com/services/data/v68.0/ -H 'Authorization: Bearer 00DE0X0A0M0PeLE!AQcAQH0dMHEXAMPLEzmpkb58urFRkgeBGsxL_QJWwYMfAbUeeG7c1EXAMPLEDUkWe6H34r1AAwOR8B8fLEz6nEXAMPLE'
```

**important:** All quotes, whether single or double, must be straight quotes, not curly quotes.

