> For the complete documentation index, see [llms.txt](https://docs.atomyx.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.atomyx.io/atomyx-submit/implementation/api-integration/testing-api-calls.md).

# Testing API Calls

You can test Submit API calls directly from the API Reference using the interactive testing panel.

The public Submit API currently uses production.

Production API requests create real Submit jobs. When testing, use clearly identifiable test external IDs, avoid real customer data unless required, and only use artwork files that are safe for testing.

### Before sending a test request

Make sure you have:

* entered a valid production API key
* checked the request body
* used a clearly identifiable test `externalId`
* confirmed that you are intentionally creating a Submit job
* avoided sensitive customer data unless required for a controlled test

### Recommended testing flow

Use this flow when validating a new integration:

1. Create a basic job using only `externalId`.
2. Confirm the API returns `201 Created`.
3. Open the returned `uploadURL`.
4. Confirm the Submit upload experience opens correctly.
5. Add metadata to the request.
6. Confirm the metadata appears correctly in the Submit UI.
7. Add branding, if required.
8. Confirm the colour and logo display correctly.
9. Add capabilities such as `checkFix`, `proof`, or `adjust`.
10. Confirm the expected Submit workflow is enabled.
11. Add a `callbackURL`, if your integration needs status updates.
12. Confirm your receiving system can accept callback requests.
13. Confirm your receiving system verifies the HMAC signature.
14. Confirm your receiving system can handle duplicate callback deliveries safely.

### Testing with cURL

Example:

```bash
curl -X POST "https://submit.atomyx.io/api/jobs" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "externalId": "TEST-ORDER-10001"
  }'
```

### Testing with Postman or Apidog

You can import the OpenAPI specification into Postman or Apidog using:

```
https://submit.atomyx.io/api/openapi.json
```

Create an environment for production.

Use an environment variable for the API key, for example:

```
SUBMIT_API_KEY
```

Then configure the Authorization header as:

```http
Authorization: Bearer {{SUBMIT_API_KEY}}
```

### Production caution

Avoid sending uncontrolled test calls to production.

Use test IDs such as:

```
TEST-ORDER-10001
```

This makes test jobs easier to identify and separate from real customer submissions.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.atomyx.io/atomyx-submit/implementation/api-integration/testing-api-calls.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
