Adobe Spaces API
The Spaces API from Adobe — 2 operation(s) for spaces.
Operations 2
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
The Spaces API from Adobe — 2 operation(s) for spaces.
Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/adobe:adobe-spaces-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: REST API for Adobe Substance 3D - Firefly Services.
title: Adobe Substance 3D API - Firefly Services Spaces API
version: 1.0.0
servers:
- url: https://s3d.adobe.io
security:
- bearerAuth: []
ApiKeyAuth: []
tags:
- name: Spaces
paths:
/v1/spaces:
post:
operationId: createSpace_v1
summary: Create Space
description: Create a Space from 3D files.
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
filename:
description: Filename of the file being uploaded.
type: string
format: binary
contentMediaType: application/octet-stream
name:
description: General purpose name for multipart form value.
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/rest_base.Space'
'400':
description: Bad Request
content:
application/json:
examples:
empty_input_body:
value:
error_code: empty_input_body
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'403':
description: Forbidden
content:
application/json:
examples:
access_error:
value:
error_code: access_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'408':
description: Request Timeout
content:
application/json:
examples:
timeout_error:
value:
error_code: timeout_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'413':
description: Request Entity Too Large
content:
application/json:
examples:
entity_too_large:
value:
error_code: entity_too_large
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'422':
description: Unprocessable Entity
content:
application/json:
examples:
validation_error:
value:
error_code: validation_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'429':
description: Too Many Requests
content:
application/json:
examples:
rate_limited:
value:
error_code: rate_limited
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'500':
description: Internal Server Error
content:
application/json:
examples:
runtime_error:
value:
error_code: runtime_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
tags:
- Spaces
x-s3d-public: true
/v2/spaces:
post:
operationId: createSpace_v2
summary: Create Space API
description: '## Overview
The **Substance 3D API** provides a way to upload and temporarily store files.
Uploading files requires a **multipart/form-data** request to send data.
The request requires a **files** field containing a list of files. Each file''s **filename** field can contain a filepath to specify where the file will be stored in the space.
Example for this files tree:
```
├── textures
│ ├── diffuse.png
│ └── normal.png
└── lighthouse.fbx
```
HTTP data relative to the previous files tree:
```HTTP
POST /spaces HTTP/1.1
Host: localhost:8080
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="files"; filename="lighthouse.fbx"
Content-Type: model/vnd.autodesk.fbx
(data)
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="files"; filename="textures/diffuse.png"
Content-Type: image/png
(data)
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="files"; filename="textures/normal.png"
Content-Type: image/png
(data)
------WebKitFormBoundary7MA4YWxkTrZu0gW--
```
Curl command to create this file tree:
```
curl -X POST https://s3d.adobe.io/v2/spaces \
-F "files=@Local/Path/To/The/Local/File/lighthouse.fbx;filename=lighthouse.fbx" \
-F "files=@Local/Path/To/The/Local/File/diffuse.png;filename=textures/diffuse.png" \
-F "files=@Local/Path/To/The/Local/File/normal.png;filename=textures/normal.png"
```
The result of the post is a **JSON** which contained the **id** of the space created.
Space **id** can be used into a space source to use space content as a source for API operations.
Example of a space source:
```json
{
"space": {
"id": ""
}
}
```'
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
files:
type: array
items:
contentMediaType: application/octet-stream
format: binary
type: string
minItems: 1
required:
- files
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/rest_base.Space'
'400':
description: Bad Request
content:
application/json:
examples:
empty_input_body:
value:
error_code: empty_input_body
message: ''
invalid_multipart:
value:
error_code: invalid_multipart
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'403':
description: Forbidden
content:
application/json:
examples:
access_error:
value:
error_code: access_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'408':
description: Request Timeout
content:
application/json:
examples:
timeout_error:
value:
error_code: timeout_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'413':
description: Request Entity Too Large
content:
application/json:
examples:
entity_too_large:
value:
error_code: entity_too_large
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'422':
description: Unprocessable Entity
content:
application/json:
examples:
validation_error:
value:
error_code: validation_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'429':
description: Too Many Requests
content:
application/json:
examples:
rate_limited:
value:
error_code: rate_limited
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
'500':
description: Internal Server Error
content:
application/json:
examples:
runtime_error:
value:
error_code: runtime_error
message: ''
schema:
$ref: '#/components/schemas/ffapierrors.FFAPIError'
tags:
- Spaces
x-s3d-public: true
components:
schemas:
rest_base.SpaceFile:
type: object
properties:
name:
type: string
size:
type: integer
format: int64
minimum: 0
url:
type: string
additionalProperties: false
required:
- url
- name
- size
rest_base.Space:
type: object
properties:
$schema:
description: A URL to the JSON schema for this object.
type: string
format: uri
examples:
- https://s3d.adobe.io/schemas/rest_base.Space.json
readOnly: true
expiry:
description: time at which the space will be deleted
type: string
format: date-time
files:
description: List of all files contained in Space, ordered by name.
type:
- array
- 'null'
items:
$ref: '#/components/schemas/rest_base.SpaceFile'
id:
description: Unique identifier of this Space.
type: string
url:
description: URL to the full description of this Space.
type: string
archiveUrl:
description: URL to fetch the whole space as an archive (usually a ZIP file).
additionalProperties: false
required:
- url
- id
- expiry
- files
ffapierrors.FFAPIError:
description: The error within the error response.
type: object
properties:
$schema:
description: A URL to the JSON schema for this object.
type: string
format: uri
examples:
- https://s3d.adobe.io/schemas/ffapierrors.FFAPIError.json
readOnly: true
error_code:
description: Associated error code.
type: string
error_details:
description: Optional list of individual error details.
type: array
items:
type: object
message:
description: Error message.
type: string
additionalProperties: false
required:
- error_code
securitySchemes:
bearerAuth:
description: 'Adobe service-to-service (S2S) access token. Pass `Authorization: Bearer <Token>`. The token is not a JWT.'
scheme: bearer
type: http
ApiKeyAuth:
type: apiKey
in: header
name: x-api-key
description: 'Your client ID, which acts as the API key. Pass `x-api-key: <API_KEY>` using `<API_KEY>` as the placeholder in examples.'