openapi: 3.1.0 info: title: Sketchfab Download API description: > Programmatic download of downloadable Sketchfab models in glTF, GLB, and USDZ formats. The endpoint returns short-lived signed URLs for each available format. The caller must be authenticated on behalf of an end user (OAuth Authorization Code or Implicit flow); application-level downloads without user authentication require a direct contract with Sketchfab. Source formats (FBX, OBJ) are not exposed. version: v3 contact: name: Sketchfab Developer Support url: https://support.fab.com/s/?ProductOrigin=Sketchfab license: name: Sketchfab Developer Terms of Use url: https://sketchfab.com/developers/terms servers: - url: https://api.sketchfab.com description: Production API security: - OAuth2: [] tags: - name: Download description: Retrieve signed download URLs for a model. paths: /v3/models/{uid}/download: get: summary: Retrieve Model Download URLs description: Returns short-lived signed URLs to the glTF, GLB, and USDZ archives for the requested model. The model must be marked downloadable and the caller must have permission to download it (license-compatible or owned). operationId: getModelDownload tags: - Download parameters: - name: uid in: path required: true description: The Sketchfab model UID. schema: type: string responses: '200': description: Download URLs by format. content: application/json: schema: $ref: '#/components/schemas/DownloadEnvelope' '401': $ref: '#/components/responses/Error' '403': $ref: '#/components/responses/Error' '404': $ref: '#/components/responses/Error' components: securitySchemes: OAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://sketchfab.com/oauth2/authorize/ tokenUrl: https://sketchfab.com/oauth2/token/ refreshUrl: https://sketchfab.com/oauth2/token/ scopes: read: Read access including model downloads. responses: Error: description: Error response. content: application/json: schema: $ref: '#/components/schemas/Error' schemas: DownloadEnvelope: type: object properties: gltf: $ref: '#/components/schemas/DownloadEntry' glb: $ref: '#/components/schemas/DownloadEntry' usdz: $ref: '#/components/schemas/DownloadEntry' DownloadEntry: type: object properties: url: type: string format: uri description: Short-lived signed download URL. size: type: integer description: Archive size in bytes. expires: type: integer description: Seconds until the signed URL expires. Error: type: object properties: detail: type: string code: type: string