Arena REST API โ API Format¶
The Arena API is based on a REST architecture and exclusively transfers JSON content, except for file content operations which use both JSON and multipart/form-data.
๐ Base API URLs by Region¶
The base API URL depends on the workspace access URL:
| Workspace URL | Base API URL | Example Endpoint |
|---|---|---|
| https://app.bom.com | https://api.arenasolutions.com/[version] | https://api.arenasolutions.com/v1/items |
| https://app.arenagov.com | https://api.arenagov.com/[version] | https://api.arenagov.com/v1/items |
| https://app.europe.arenaplm.com | https://api.europe.arenaplm.com/[version] | https://api.europe.arenaplm.com/v1/items |
| https://app.arenaplm.cn | https://api.arenaplm.cn/[version] | https://api.arenaplm.cn/v1/items |
| https://app.uk.arenaplm.com | https://api.uk.arenaplm.com/[version] | https://api.uk.arenaplm.com/v1/items |
๐ง API Request Methods¶
- GET: Retrieve data
- POST: Create new data
- PUT: Update existing data
- DELETE: Remove data
Requests are constructed in JSON and sent to specific Arena API endpoints. Responses return data or confirm updates.
๐งพ JSON Input Best Practices¶
When constructing JSON requests:
- Text:
"text" - Numbers:
42 - Null:
null - Boolean:
trueorfalse - Escape internal quotes:
18" - Dates:
2012-01-12T19:22:27Z - GUIDs:
"2K4N1Y24FWFN6LDUC67B"
๐ Object Identification¶
Each Arena object is represented by a GUID (Globally Unique Identifier). Use GET to retrieve GUIDs and PUT to update objects using those GUIDs.
๐ Object vs. Relationship¶
Arena distinguishes between:
- Objects: e.g., items, files
- Relationships: e.g., BOM lines, file associations
This allows specifying attributes for both the object and its relationship.
Example: - Item attributes: name, number - BOM relationship attributes: quantity, reference designators
๐ Date and Time Format¶
Arena uses Zulu format for timestamps:
YYYY-MM-DDTHH:mm:ssZ (e.g., "2014-07-07T23:19:46Z")
๐ Arena-Usage-Reason Header¶
As of the 2024.2 release, users are encouraged to include a meaningful attribute labeled Arena-Usage-Reason in the request header.
- Appears as
reasonin the response - Maximum length: 100 characters
- Format:
<company-name> <integrated-system> / <product-version> <comment>
If omitted, a note will prompt the user to provide one.