{ "variable": [ { "id": "baseUrl", "key": "baseUrl", "type": "string", "name": "string", "value": "https:\/\/api.rapidcompact.com" } ], "info": { "name": "RapidCompact API v2 Documentation", "_postman_id": "fcd8910a-2f61-47ef-9708-b4e133b99bdc", "description": "", "schema": "https:\/\/schema.getpostman.com\/json\/collection\/v2.1.0\/collection.json" }, "item": [ { "name": "API Tokens", "description": "", "item": [ { "name": "Get Tokens", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/tokens", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/tokens" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "[\n\t{\n\t\t\"id\": 222,\n\t\t\"name\": \"name of api token\",\n\t\t\"last_used_at\": \"2021-09-01T11:21:22.000000Z\",\n\t\t\"created_at\": \"2021-09-01T10:26:57.000000Z\",\n\t\t\"optimization_count\": 42,\n\t}\n]", "name": "success" } ] }, { "name": "Create Token", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/tokens\/create", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/tokens\/create" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"name\":\"name of new api token\"}" }, "description": "" }, "response": [ { "header": [], "code": 200, "body": "234|y5NGBTJk5OX5Zva5RfxTz0GkXEL9axN79vTfsJOH", "name": "success" } ] }, { "name": "Delete Token", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/tokens\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/tokens\/:id", "variable": [ { "id": "id", "key": "id", "value": "42", "description": "The id of the API token" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 401, "body": "{\"message\":\"Invalid token\",\"error\":\"Token format is invalid\"}", "name": "" } ] }, { "name": "Get Token", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/tokens\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/tokens\/:id", "variable": [ { "id": "id", "key": "id", "value": "42", "description": "The id of the API token" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n\t\"id\": 1,\n\t\"tokenable_type\": \"App\\\\Models\\\\User\",\n\t\"tokenable_id\": 45,\n\t\"name\": \"name of api token\",\n\t\"abilities\": [\n\t\t\"*\"\n\t],\n\t\"last_used_at\": null,\n\t\"created_at\": \"2021-10-26T10:38:07.000000Z\",\n\t\"updated_at\": \"2021-10-26T10:38:07.000000Z\",\n\t\"plain_text\": \"\"\n}", "name": "success" } ] } ] }, { "name": "Base Asset", "description": "", "item": [ { "name": "Optimize", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/optimize\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/optimize\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"config\":{\"schema\":\"2.5\",\"limits\":{\"faces\":{\"count\":30000},\"textures\":{\"baseColor\":2048,\"emissive\":2048,\"normal\":2048,\"orm\":2048}},\"assetSimplification\":{\"meshDecimation\":{\"method\":\"rebake\"},\"topologySettings\":{\"vertexMergingDistance\":0.005,\"meshDensityEqualization\":0,\"boundaryPreservationFactor\":0.5},\"uvAndAtlasSettings\":{\"uvStretchTolerance\":0},\"materialAndTextureBaking\":{\"bakingQuality\":\"medium\",\"bakeNormalMap\":true,\"bakeAOMap\":false}},\"compressionAndExport\":{\"fileExports\":[{\"fileType\":\"glb\",\"meshCompressionMethod\":\"none\",\"customScaling\":1,\"textureFormat\":{\"baseColor\":\"auto\",\"emissive\":\"auto\",\"normal\":\"png\",\"orm\":\"auto\"}}]}},\"tags\":[\"Low-Poly\",\"MyTag\"]}" }, "description": "There are two ways to optimize a base asset:\n\nIn the first way send a config as a json object that complies with the [API Optimize Schema](https:\/\/rapidcompact.com\/doc), or send the id of one of your presets or of a factoryPreset\n\nYou can use our \"optimization_finished\" webhook to get notified when your model has been optimized. It also includes downloadlinks to your optimized model\n\nThe \"Try it out\" feature for this endpoint only works with the preset_id parameter. It doesn't work with the config parameter, because the config gets sent as a string, but it needs to be a json object. Please checkout the example on the right on how to set the config parameter" }, "response": [ { "header": [], "code": 200, "body": "{\n \"id\": 281,\n \"name\": \"teapot.obj\",\n \"optimization_status\": \"sent_to_queue\",\n \"job_status\": {\n \"id\": 518,\n \"job_id\": null,\n \"type\": \"App\\\\Jobs\\\\ProcessRawModel\",\n \"queue\": null,\n \"attempts\": 0,\n \"progress_now\": 0,\n \"progress_max\": 0,\n \"status\": \"queued\",\n \"input\": null,\n \"output\": null,\n \"created_at\": \"2021-02-15T13:34:52.000000Z\",\n \"updated_at\": \"2021-02-15T13:34:52.000000Z\",\n \"started_at\": null,\n \"finished_at\": null,\n \"key\": \"rapid_model:624\"\n },\n \"progress\": 0,\n \"processing_step\": \"Scheduled for processing\",\n \"external\": null,\n \"rawmodel\": {\n \"id\": 282,\n \"name\": \"teapot.obj\",\n \"processing\": true\n }\n}", "name": "success" } ] }, { "name": "Multi Optimize", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/optimize", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/optimize" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"optimizations\":[{\"model_id\":89,\"config\":{\"preset_id\":2004,\"tags\":[\"Lens Studio 3D\",\"Medium Resolution\",\"Low-Poly\"],\"exportName\":\"calibrationTarget.glb\"}},{\"model_id\":77,\"config\":{\"preset_id\":2004,\"tags\":[\"Lens Studio 3D\",\"Medium Resolution\",\"Mid-Poly\"],\"exportName\":\"DamagedHelmet.glb\"}}]}" }, "description": "Optimizes multiple models with one request\n\nUse the same format as in the optimization endpoint but pass it in an array which contains the request as config (preset_id or config as json object) and the model_id of the base assets you want to process\n\nLook at the example request for the data structure\n\nYou can use our \"optimization_finished\" webhook to get notified when your model has been optimized. It also includes download links to your optimized model" }, "response": [ { "header": [], "code": 204, "body": "", "name": "success" }, { "header": [], "code": 400, "body": "Could not process request: Missing required parameter", "name": "error" }, { "header": [], "code": 500, "body": "An error occurred while processing your request: ...", "name": "error" } ] }, { "name": "Get Running Jobs", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/jobs", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/jobs" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Returns rapidmodels (until 1 week) that are still being processed or were not successfully optimized" }, "response": [ { "header": [], "code": 200, "body": "{\n\t\t\"data\": [\n\t\t\t{\n\t\t\t\t\"id\": 5812,\n\t\t\t\t\"name\": \"TVBench\",\n\t\t\t\t\"optimization_status\": \"failed\",\n\t\t\t\t\"job_status\": {\n\t\t\t\t\t\"id\": 3601,\n\t\t\t\t\t\"job_id\": \"edab51b2-1c47-4a0f-b807-58e913dbabc9\",\n\t\t\t\t\t\"type\": \"App\\\\Jobs\\\\ProcessRawModel\",\n\t\t\t\t\t\"queue\": \"default\",\n\t\t\t\t\t\"attempts\": 1,\n\t\t\t\t\t\"progress_now\": 100,\n\t\t\t\t\t\"progress_max\": 100,\n\t\t\t\t\t\"status\": \"finished\",\n\t\t\t\t\t\"input\": null,\n\t\t\t\t\t\"output\": \"{\\\"exit_code\\\":1}\",\n\t\t\t\t\t\"created_at\": \"2021-10-11 20:08:52\",\n\t\t\t\t\t\"updated_at\": \"2021-10-11 20:08:53\",\n\t\t\t\t\t\"started_at\": \"2021-10-11 20:08:52\",\n\t\t\t\t\t\"finished_at\": \"2021-10-11 20:08:53\",\n\t\t\t\t\t\"key\": \"rapid_model:5812\"\n\t\t\t\t},\n\t\t\t\t\"progress\": 100,\n\t\t\t\t\"processing_step\": \"Done\",\n\t\t\t\t\"external\": false,\n\t\t\t\t\"rawmodel\": {\n\t\t\t\t\t\"id\": 2257,\n\t\t\t\t\t\"name\": \"TVBench\"\n\t\t\t\t}\n\t\t\t}\n\t\t]\n\t}", "name": "success" } ] }, { "name": "Get Base Asset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": {\n \"id\": 281,\n \"name\": \"teapot\",\n \"processing\": false,\n \"external\": false,\n \"upload_status\": \"complete\",\n \"size\": 438680,\n \"created_at\": \"2021-02-08T16:59:52+01:00\",\n \"rapid_models\": [\n 635,\n 617\n ],\n \"scale_factor\": \"10\",\n \"tags\": [\n {\n \"id\": 241,\n \"name\": \"Mid-Poly\",\n \"created_at\": \"2022-12-12 13:12:37+00\",\n \"updated_at\": \"2022-12-12 13:12:37+00\",\n \"raw_id\": 281\n }\n ],\n \"downloads\": {\n \"error.log\": \"signed url for the error.log\",\n \"info.log\": \"signed url for info.log\",\n \"metrics.json\": \"signed url for the metrics.json\",\n \"rpd_info.json\": \"signed url for the rpd_info.json\",\n \"teapot.obj\": \"signed url for the teapot.obj\",\n \"thumb.jpg\": \"signed url for the thumb.jpg\"\n }\n }\n}", "name": "" } ] }, { "name": "Delete Base Asset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Get Download URLs", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/downloads", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/downloads", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Returns a list of urls to download the individual base asset files" }, "response": [ { "header": [], "code": 200, "body": "{\n \"RezColorChecker.mtl\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"RezColorChecker.obj\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"RezColorChecker.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\"\n}", "name": "success" } ] }, { "name": "Get imported DCC files", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/downloads\/pbr", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/downloads\/pbr", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Returns a list of urls to download the individual converted DCC material and quality control files" }, "response": [ { "header": [], "code": 200, "body": "{\n \"materials\" : {\n \"ao.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"diffuse.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n },\n \"qc\": {\n \"render_0.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"render_1.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"diff_0.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n \"diff_1.png\":\"https:\\\/\\\/s3.eu-central-1.amazonaws.com\\\/rapidcompact-models-...\",\n }\n}", "name": "success" } ] }, { "name": "Download zip", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/downloads\/zip", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/downloads\/zip", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Downloads all model files as zip.\n\nA stream is returned which contains the model data." }, "response": [ { "header": [], "code": 200, "body": "Streamed response", "name": "success" } ] }, { "name": "Delete Tag of a Base Asset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/tags\/:tagId", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/tags\/:tagId", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" }, { "id": "tagId", "key": "tagId", "value": "2", "description": "The id of the tag that will be deleted" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 401, "body": "{\"message\":\"Invalid token\",\"error\":\"Token format is invalid\"}", "name": "" } ] }, { "name": "Get Base Assets", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel", "query": [ { "key": "q", "value": "yourSearchString", "description": "Optional parameter to search for base assets by name or tag", "disabled": false } ], "raw": "{{baseUrl}}\/api\/v2\/rawmodel?q=yourSearchString" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Paginated response of your base assets. Search for base assets by name or tag" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": [\n {\n \"id\": 1,\n \"name\": \"teapot\",\n \"external\": false,\n \"upload_status\": \"complete\",\n \"size\": 315088,\n \"created_at\": \"2022-05-24T15:05:47+02:00\",\n \"scale_factor\": \"1\",\n \"has_errors\": true,\n \"format\": \"fbx\",\n \"tags\": [\n {\n \"id\": 1,\n \"name\": \"Low-Poly\",\n \"created_at\": \"2022-05-24 15:06:03\",\n \"updated_at\": \"2022-05-24 15:06:03\",\n \"raw_id\": 1\n }\n ],\n \"downloads\": {\n \"error.log\": \"signed url for the error.log\",\n \"info.log\": \"signed url for info.log\",\n \"metrics.json\": \"signed url for the metrics.json\",\n \"rpd_info.json\": \"signed url for the rpd_info.json\",\n \"teapot.fbx\": \"signed url for the teapot.obj\",\n \"thumb.jpg\": \"signed url for the thumb.jpg\",\n \"warning.log\": \"signed url for the warning.log\"\n }\n }\n ],\n \"links\": {\n \"first\": \"https:\/\/url\/api\/v2\/rawmodel?page=1\",\n \"last\": \"https:\/\/url\/api\/v2\/rawmodel?page=1\",\n \"prev\": null,\n \"next\": null\n },\n \"meta\": {\n \"current_page\": 1,\n \"from\": 1,\n \"last_page\": 1,\n \"links\": [\n {\n \"url\": null,\n \"label\": \"« Previous\",\n \"active\": false\n },\n {\n \"url\": \"https:\/\/url\/api\/v2\/rawmodel?page=1\",\n \"label\": \"1\",\n \"active\": true\n },\n {\n \"url\": null,\n \"label\": \"Next »\",\n \"active\": false\n }\n ],\n \"path\": \"https:\/\/url\/api\/v2\/rawmodel\",\n \"per_page\": 10,\n \"to\": 1,\n \"total\": 1\n }\n}", "name": "success" } ] }, { "name": "Update Base Asset - Add Tags, Set scale factor", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"tags\":[\"low poly\",\"mb target\"],\"scale_factor\":0.5}" }, "description": "A tag can have 255 utf-8 characters including whitespaces" }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 401, "body": "{\"message\":\"Invalid token\",\"error\":\"Token format is invalid\"}", "name": "" } ] }, { "name": "Delete Multiple Base Assets", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/delete", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/delete" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"ids\":[726,324]}" }, "description": "" }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 401, "body": "{\"message\":\"Invalid token\",\"error\":\"Token format is invalid\"}", "name": "" } ] }, { "name": "Create Base Asset - Get Upload Link", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/api-upload\/start", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/api-upload\/start" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"model_name\":\"teapot\",\"filenames\":[\"mymodel.glb\",\"material.mat\"]}" }, "description": "Calling this endpoint will return an id for the new base asset and presigned URLs which need to be used to upload the files directly to our storage. The URLs are unique for every file.\nThe \"complete_upload\" field will contain a link to the \"Create Base Asset - Complete Upload\" endpoint that needs to be called when the upload is done" }, "response": [ { "header": [], "code": 200, "body": "{\n \"id\": 1,\n \"links\": {\n \"s3_upload_urls\": {\n \"mymodel.glb\": \"signed url for mymodel.glb\",\n \"material.mat\": \"signed url for material.mat\"\n },\n \"complete_upload\": \"https:\/\/api.rapidcompact.com\/api\/rawmodels\/1\/api-upload\/complete\"\n }\n}", "name": "success" } ] }, { "name": "Create Base Asset - Complete Upload", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/api-upload\/complete", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/api-upload\/complete", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Call this endpoint with the received base asset id from the \"Create Base Asset - Get Upload Link\" endpoint after uploading the base asset files\n\nYou can use our \"analysis_finished\" webhook to get notified when your model is ready to be optimized" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": {\n \"id\": 281,\n \"name\": \"teapot\",\n \"processing\": false,\n \"upload_status\": \"complete\",\n \"size\": 438680,\n \"created_at\": \"2021-02-08T16:59:52+01:00\",\n \"rapid_models\": [\n 635,\n 617\n ],\n \"scale_factor\": \"10\",\n \"downloads\": {\n \"error.log\": \"signed url for the error.log\",\n \"info.log\": \"signed url for the info.log\",\n \"metrics.json\": \"signed url for the metrics.json\",\n \"rpd_info.json\": \"signed url for the rpd_info.json\",\n \"teapot.obj\": \"signed url for the uploaded file\",\n \"thumb.jpg\": \"signed url for the thumb.jpg\"\n }\n }\n}", "name": "" } ] }, { "name": "Retries a failed import.", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/api-upload\/retry", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/api-upload\/retry", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" } ] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 401, "body": "{\"message\":\"Invalid token\",\"error\":\"Token format is invalid\"}", "name": "" } ] }, { "name": "Get Associated Rapid Models", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/:id\/rapidmodels", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/:id\/rapidmodels", "variable": [ { "id": "id", "key": "id", "value": "1", "description": "The id of the base asset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Get all rapid models which were optimized from this base asset" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": [\n {\n \"id\": 1,\n \"name\": \"teapot\",\n \"optimization_status\": \"done\",\n \"rawmodel\": {...},\n \"job_status\": {...},\n \"created_at\": \"2021-02-16T16:50:41+01:00\",\n \"updated_at\": \"2021-02-16T16:50:53+01:00\",\n \"progress\": 100,\n \"processing_step\": \"Done\",\n \"external\": false,\n \"rapid_compact_core_version\": \"6.1.1\",\n \"tags\": [\n {\n \"id\": 377,\n \"name\": \"Preserve UVs\",\n \"created_at\": \"2024-02-15 18:05:36+00\",\n \"updated_at\": \"2024-02-15 18:05:36+00\",\n \"rapid_id\": 635\n }\n ],\n \"export_name\": \"export name\",\n \"uuid\": \"d8316d1f-3c7d-4777-b72e-c760064f9d08\",\n \"accepted\": false,\n \"meta\": {\n \"size\": 573420,\n \"exportSize\": 1029548\n },\n \"thumbnail\": {},\n \"rpd_info\": \"signed url for the rpd_info.json\",\n \"rpd_warnings\": \"signed url for the warning.log\",\n \"rpd_error\": \"signed url for the error.log\",\n \"downloads\": {\n \"glb\": \"signed url for the .glb\"\n }\n }\n ]\n}", "name": "" } ] } ] }, { "name": "Embeds", "description": "", "item": [ { "name": "Get Embeds", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/embeds", "query": [ { "key": "page", "value": "17", "description": "Page number to fetch", "disabled": false }, { "key": "q", "value": "repellat", "description": "Search string to filter embeds by name", "disabled": false }, { "key": "rapidId", "value": "11", "description": "Filter embeds by rapidmodel id", "disabled": false } ], "raw": "{{baseUrl}}\/api\/v2\/embeds?page=17&q=repellat&rapidId=11" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Returns the embeds of the user" }, "response": [ { "header": [], "code": 200, "body": "{\n data: [\n {\n \"id\":53,\n \"identifier\":\"fRoL5P9iyb\",\n \"name\":\"RezColorChecker Embed\",\n \"user_id\":45,\n \"model_id\":70,\n \"view_count\":13,\n \"created_at\":\"2022-05-04T12:10:52.000000Z\",\n \"updated_at\":\"2022-06-14T13:13:00.000000Z\",\n \"rapidModelId\": 73,\n \"rapidModelName\":\"RezColorChecker\",\n \"thumbnail\":\"https:\/\/2vv7ezymi86va.cloudfront.net\/rapid\/ba12f8a6-....\",\n \"url\":\"https:\/\/api.rapidcompact.com\/viewer?id=123456\"\n },\n ...\n ],\n links: {\n first: \"http:\/\/...\",\n last: \"http:\/\/...\",\n prev: null,\n next: \"http:\/\/...\"\n },\n meta: {\n \"current_page\":1,\n \"from\":1,\n \"last_page\":2,\n \"per_page\":10,\n \"to\":10,\n \"total\":15,\n links: [\n {\n \"url\":null,\n \"label\":\"Previous\",\n \"active\":false\n },\n ...\n ]\n }\n}", "name": "" } ] }, { "name": "Get Embed", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/embeds\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/embeds\/:id", "variable": [ { "id": "id", "key": "id", "value": "42", "description": "The id of the embed" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": {\n \"id\": 42,\n \"identifier\": \"ZmR8oTVEiR\",\n \"name\": \"teapot Embed\",\n \"user_id\": 1,\n \"model_id\": 1,\n \"view_count\": 100,\n \"created_at\": \"2022-06-27T13:30:30.000000Z\",\n \"updated_at\": \"2022-06-27T14:20:17.000000Z\"\n }\n}", "name": "success" } ] }, { "name": "Create Embed", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/embeds\/create", "query": [], "raw": "{{baseUrl}}\/api\/v2\/embeds\/create" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"model_id\":281,\"name\":\"\\\"my embeds name\\\"\",\"save_user_theme\":true,\"config\":\"{\\n \\\"renderCanvasCSS\\\" : \\\"background:;\\\",\\n \\\"environmentURL\\\" : \\\"images\\\/environment.dds\\\",\\n \\\"companyLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUh...kSuQmCC\\\",\\n \\\"companyLogoToggle\\\" : \\\"true\\\",\\n \\\"companyLink\\\" : \\\"https:\\\/\\\/dgg3d.com\\\",\\n \\\"companyLogoCSS\\\" : \\\"width:120px;height:71.3004px;background:;\\\",\\n \\\"productLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUh...ASUVORK5CYII=\\\",\\n \\\"productLogoToggle\\\" : \\\"true\\\",\\n \\\"productLink\\\" : \\\"https:\\\/\\\/rapidcompact.com\\\",\\n \\\"productLogoCSS\\\" : \\\"width:120px;height:21.4819px;background:;\\\",\\n \\\"threeDLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUhEU...OAAAAAElFTkSuQmCC\\\",\\n \\\"threeDLogoToggle\\\" : \\\"true\\\",\\n \\\"threeDLogoCSS\\\" : \\\"width:24px;height:24px;background:;\\\",\\n \\\"interactiveToolsCSS\\\" : \\\"background:;\\\",\\n \\\"skyBoxEnabled\\\" : \\\"false\\\",\\n \\\"skyBoxBlur\\\" : \\\"0\\\",\\n \\\"shadowToggle\\\" : \\\"false\\\",\\n \\\"shadowOpacity\\\" : \\\"0.5\\\",\\n \\\"shadowBlur\\\" : \\\"0\\\",\\n \\\"shadowLightIntensity\\\" : \\\"0.3\\\",\\n \\\"cameraMinVerticalAngle\\\" : \\\"-90\\\",\\n \\\"cameraMaxVerticalAngle\\\" : \\\"90\\\",\\n \\\"cameraMinZoom\\\" : \\\"1\\\",\\n \\\"cameraMaxZoom\\\" : \\\"6\\\",\\n \\\"cameraPanning\\\" : \\\"0.5\\\",\\n \\\"cameraBloom\\\" : \\\"0\\\",\\n \\\"cameraContrast\\\" : \\\"1\\\",\\n \\\"cameraExposure\\\" : \\\"1\\\",\\n \\\"fxaaOn\\\" : \\\"true\\\",\\n \\\"enableSimpleMeasurement\\\" : \\\"false\\\",\\n \\\"enableCoordinateDisplay\\\" : \\\"false\\\",\\n \\\"baseUnit\\\" : \\\"m\\\",\\n \\\"displayUnit\\\" : \\\"m\\\",\\n \\\"enableARBtn\\\" : \\\"false\\\",\\n \\\"enableAnimationControl\\\" : \\\"false\\\",\\n \\\"animationSpeed\\\" : \\\"1\\\",\\n \\\"animationIdleTime\\\" : \\\"5\\\",\\n \\\"backgroundIsGradient\\\" : \\\"false\\\",\\n \\\"backgroundIsColor\\\" : \\\"false\\\",\\n \\\"gradientBackgroundColor1\\\" : \\\"#ffffff\\\",\\n \\\"gradientBackgroundColor2\\\" : \\\"#aaaaaa\\\",\\n \\\"plainBackgroundColor\\\" : \\\"#ffffff\\\",\\n \\\"environmentName\\\" : \\\"studio_small\\\",\\n \\\"baseUnits\\\" : \\\"m,cm,mm,yd,ft,in\\\",\\n \\\"displayUnits\\\" : \\\"m,cm,mm,yd,ft,in\\\"\\n}\"}" }, "description": "Create an embed from a rapid model.\nThe webhooks will be called with the 'embed_creation' event to notify the user as soon as the embed is created." }, "response": [ { "header": [], "code": 201, "body": "{\n 'status': 'Successful',\n 'message': 'Embed created successfully.',\n 'rapidmodel_id': 31,\n 'embed_id': 513,\n 'embed_url': 'http:\/\/api.rapidcompact.com\/viewer?id=iKlCoxprxK',\n}", "name": "success" } ] }, { "name": "Delete Embed", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/embeds\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/embeds\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the embed" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 204, "body": "", "name": "success" } ] }, { "name": "Create Embed from Base Asset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/embeds\/raw", "query": [], "raw": "{{baseUrl}}\/api\/v2\/embeds\/raw" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"raw_model_id\":281,\"name\":\"\\\"my embeds name\\\"\",\"save_user_theme\":true,\"config\":\"{\\n \\\"renderCanvasCSS\\\" : \\\"background:;\\\",\\n \\\"environmentURL\\\" : \\\"images\\\/environment.dds\\\",\\n \\\"companyLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUh...kSuQmCC\\\",\\n \\\"companyLogoToggle\\\" : \\\"true\\\",\\n \\\"companyLink\\\" : \\\"https:\\\/\\\/dgg3d.com\\\",\\n \\\"companyLogoCSS\\\" : \\\"width:120px;height:71.3004px;background:;\\\",\\n \\\"productLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUh...ASUVORK5CYII=\\\",\\n \\\"productLogoToggle\\\" : \\\"true\\\",\\n \\\"productLink\\\" : \\\"https:\\\/\\\/rapidcompact.com\\\",\\n \\\"productLogoCSS\\\" : \\\"width:120px;height:21.4819px;background:;\\\",\\n \\\"threeDLogo\\\" : \\\"data:image\\\/png;base64,iVBORw0KGgoAAAANSUhEU...OAAAAAElFTkSuQmCC\\\",\\n \\\"threeDLogoToggle\\\" : \\\"true\\\",\\n \\\"threeDLogoCSS\\\" : \\\"width:24px;height:24px;background:;\\\",\\n \\\"interactiveToolsCSS\\\" : \\\"background:;\\\",\\n \\\"skyBoxEnabled\\\" : \\\"false\\\",\\n \\\"skyBoxBlur\\\" : \\\"0\\\",\\n \\\"shadowToggle\\\" : \\\"false\\\",\\n \\\"shadowOpacity\\\" : \\\"0.5\\\",\\n \\\"shadowBlur\\\" : \\\"0\\\",\\n \\\"shadowLightIntensity\\\" : \\\"0.3\\\",\\n \\\"cameraMinVerticalAngle\\\" : \\\"-90\\\",\\n \\\"cameraMaxVerticalAngle\\\" : \\\"90\\\",\\n \\\"cameraMinZoom\\\" : \\\"1\\\",\\n \\\"cameraMaxZoom\\\" : \\\"6\\\",\\n \\\"cameraPanning\\\" : \\\"0.5\\\",\\n \\\"cameraBloom\\\" : \\\"0\\\",\\n \\\"cameraContrast\\\" : \\\"1\\\",\\n \\\"cameraExposure\\\" : \\\"1\\\",\\n \\\"fxaaOn\\\" : \\\"true\\\",\\n \\\"enableSimpleMeasurement\\\" : \\\"false\\\",\\n \\\"enableCoordinateDisplay\\\" : \\\"false\\\",\\n \\\"baseUnit\\\" : \\\"m\\\",\\n \\\"displayUnit\\\" : \\\"m\\\",\\n \\\"enableARBtn\\\" : \\\"false\\\",\\n \\\"enableAnimationControl\\\" : \\\"false\\\",\\n \\\"animationSpeed\\\" : \\\"1\\\",\\n \\\"animationIdleTime\\\" : \\\"5\\\",\\n \\\"backgroundIsGradient\\\" : \\\"false\\\",\\n \\\"backgroundIsColor\\\" : \\\"false\\\",\\n \\\"gradientBackgroundColor1\\\" : \\\"#ffffff\\\",\\n \\\"gradientBackgroundColor2\\\" : \\\"#aaaaaa\\\",\\n \\\"plainBackgroundColor\\\" : \\\"#ffffff\\\",\\n \\\"environmentName\\\" : \\\"studio_small\\\",\\n \\\"baseUnits\\\" : \\\"m,cm,mm,yd,ft,in\\\",\\n \\\"displayUnits\\\" : \\\"m,cm,mm,yd,ft,in\\\"\\n}\"}" }, "description": "Create an embed from a base asset.\nThe base asset must be in the .glb file format.\nThe webhooks will be called with the 'embed_from_raw_creation' event to notify the user as soon as the embed is created" }, "response": [ { "header": [], "code": 200, "body": "{\n \"message\" : \"Embed creation pending, wait for the webhook call\",\n \"embed_id\": 513,\n \"embed_url\": 'http:\/\/api.rapidcompact.com\/viewer?id=iKlCoxprxK',\n}", "name": "success" }, { "header": [], "code": 422, "body": "{\n \"message\" : \"Raw model is not in the glb file format\"\n}", "name": "no glb format" } ] } ] }, { "name": "Presets", "description": "", "item": [ { "name": "Create Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/create", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/create" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"name\":\"name of the new preset\",\"description\":\"Optimizes for 20k faces and drops textures\",\"rapidCompactCoreVersion\":\"6.1.1\",\"config\":{\"schema\":\"2.5\",\"limits\":{\"faces\":{\"count\":30000},\"textures\":{\"baseColor\":2048,\"emissive\":2048,\"normal\":2048,\"orm\":2048}},\"assetSimplification\":{\"meshDecimation\":{\"method\":\"rebake\"},\"topologySettings\":{\"vertexMergingDistance\":0.005,\"meshDensityEqualization\":0,\"boundaryPreservationFactor\":0.5},\"uvAndAtlasSettings\":{\"uvStretchTolerance\":0},\"materialAndTextureBaking\":{\"bakingQuality\":\"medium\",\"bakeNormalMap\":true,\"bakeAOMap\":false}},\"compressionAndExport\":{\"fileExports\":[{\"fileType\":\"glb\",\"meshCompressionMethod\":\"none\",\"customScaling\":1,\"textureFormat\":{\"baseColor\":\"auto\",\"emissive\":\"auto\",\"normal\":\"png\",\"orm\":\"auto\"}}]}}}" }, "description": "The \"Try it out\" feature for this endpoint doesn't work, because the config gets sent as a string, but it needs to be a json object. Please check the example request on the right side" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Update Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/update", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/update" }, "method": "PATCH", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"id\":42,\"name\":\"name of the new preset\",\"config\":{\"schema\":\"2.5\",\"limits\":{\"faces\":{\"count\":30000},\"textures\":{\"baseColor\":2048,\"emissive\":2048,\"normal\":2048,\"orm\":2048}},\"assetSimplification\":{\"meshDecimation\":{\"method\":\"rebake\"},\"topologySettings\":{\"vertexMergingDistance\":0.005,\"meshDensityEqualization\":0,\"boundaryPreservationFactor\":0.5},\"uvAndAtlasSettings\":{\"uvStretchTolerance\":0},\"materialAndTextureBaking\":{\"bakingQuality\":\"medium\",\"bakeNormalMap\":true,\"bakeAOMap\":false}},\"compressionAndExport\":{\"fileExports\":[{\"fileType\":\"glb\",\"meshCompressionMethod\":\"none\",\"customScaling\":1,\"textureFormat\":{\"baseColor\":\"auto\",\"emissive\":\"auto\",\"normal\":\"png\",\"orm\":\"auto\"}}]}}}" }, "description": "The \"Try it out\" feature for this endpoint doesn't work, because the config gets sent as a string, but it needs to be a json object. Please check the example request on the right side" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Get all Factory Presets", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/factory", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/factory" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Factory Presets are provided by RapidCompact\n\nA factory presets describes a optimization setting for different applications e.g. Lens Studio, Game Engines (Unreal, Unity) and devices (e.g. Hololens). You can use the returned id when using the Optimize endpoint" }, "response": [ { "header": [], "code": 200, "body": "[\n {\n \"id\": 1,\n \"name\": \"Spark AR Low Res\",\n \"config\": \"{\\\"workflowSettings\\\":{\\\"targetMeshResolution\\\":{\\\"faceCount\\\":15000},\\\"targetTextureResolution\\\":{\\\"baseColor\\\":1024,\\\"emissive\\\":1024,\\\"normal\\\":1024,\\\"orm\\\":1024}},\\\"assetSimplification\\\":{\\\"meshDecimation\\\":{\\\"method\\\":\\\"rebake\\\"},\\\"topologySettings\\\":{\\\"vertexMergingDistance\\\":0.005,\\\"meshDensityEqualization\\\":0,\\\"boundaryPreservationFactor\\\":0.5},\\\"uvAndAtlasSettings\\\":{\\\"uvStretchTolerance\\\":0},\\\"materialAndTextureBaking\\\":{\\\"bakingQuality\\\":\\\"low\\\",\\\"bakeNormalMap\\\":true,\\\"bakeAOMap\\\":false}},\\\"compressionAndExport\\\":{\\\"fileExports\\\":[{\\\"fileType\\\":\\\"glb\\\",\\\"meshCompressionMethod\\\":\\\"none\\\",\\\"customScaling\\\":1,\\\"textureFormat\\\":{\\\"baseColor\\\":\\\"jpg\\\",\\\"emissive\\\":\\\"jpg\\\",\\\"normal\\\":\\\"jpg\\\",\\\"orm\\\":\\\"jpg\\\"}}]}}\"\n },\n]", "name": "success" } ] }, { "name": "Convert Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/rpdx", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/rpdx" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"config\":{\"schema\":\"2.5\",\"limits\":{\"faces\":{\"count\":30000},\"textures\":{\"baseColor\":2048,\"emissive\":2048,\"normal\":2048,\"orm\":2048}},\"assetSimplification\":{\"meshDecimation\":{\"method\":\"rebake\"},\"topologySettings\":{\"vertexMergingDistance\":0.005,\"meshDensityEqualization\":0,\"boundaryPreservationFactor\":0.5},\"uvAndAtlasSettings\":{\"uvStretchTolerance\":0},\"materialAndTextureBaking\":{\"bakingQuality\":\"medium\",\"bakeNormalMap\":true,\"bakeAOMap\":false}},\"compressionAndExport\":{\"fileExports\":[{\"fileType\":\"glb\",\"meshCompressionMethod\":\"none\",\"customScaling\":1,\"textureFormat\":{\"baseColor\":\"auto\",\"emissive\":\"auto\",\"normal\":\"png\",\"orm\":\"auto\"}}]}}}" }, "description": "Convert a preset in API format to CLI format and CLI commands. The endpoint will return a zip file containing the requested files. The \"Try it out\" feature for this endpoint doesn't work, because the config gets sent as a string, but it needs to be a json object. Please check the example request on the right side" }, "response": [ { "header": [], "code": 200, "body": " Streamed Response", "name": "success" } ] }, { "name": "Get Preset in CLI Format", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/rpdx\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/rpdx\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the preset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "The endpoint will return a zip file containing the requested files" }, "response": [ { "header": [], "code": 200, "body": " Streamed Response", "name": "success" } ] }, { "name": "Download Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/:id\/download", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/:id\/download", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the preset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Downloads a preset as zip file which contains both API and CLI formats." }, "response": [ { "header": [], "code": 200, "body": " Streamed Response", "name": "success" } ] }, { "name": "Get Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the preset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"id\":11,\n \"name\":\"preset 2\",\n \"config\":{\"schema\":\"2.5\",\"limits\":{\"faces\":{\"count\":30000},\"textures\":{\"baseColor\":2048,\"emissive\":2048,\"normal\":2048,\"orm\":2048}},\"assetSimplification\":{\"meshDecimation\":{\"method\":\"rebake\"},\"topologySettings\":{\"vertexMergingDistance\":0.005,\"meshDensityEqualization\":0,\"boundaryPreservationFactor\":0.5},\"uvAndAtlasSettings\":{\"uvStretchTolerance\":0},\"materialAndTextureBaking\":{\"bakingQuality\":\"medium\",\"bakeNormalMap\":true,\"bakeAOMap\":false}},\"compressionAndExport\":{\"fileExports\":[{\"fileType\":\"glb\",\"meshCompressionMethod\":\"none\",\"customScaling\":1,\"textureFormat\":{\"baseColor\":\"auto\",\"emissive\":\"auto\",\"normal\":\"png\",\"orm\":\"auto\"}}]}},\n \"rpdx_version\":\"6.1.1\",\n \"user_id\":328,\n \"created_at\":\"2021-04-22T09:11:30.000000Z\",\n \"updated_at\":\"2021-04-22T09:11:30.000000Z\"\n}", "name": "success" } ] }, { "name": "Delete Preset", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the preset" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Get all Presets", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/preset", "query": [], "raw": "{{baseUrl}}\/api\/v2\/preset" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "[\n {\n \"id\": 11,\n \"name\":\"preset 2\",\n \"config\":\"{\\\"sceneManipulation\\\":{\\\"rotateZUp\\\":false,\\\"centerModel\\\":false,\\\"removeInvisibleGeometry\\\":false,\\\"discardAnimations\\\":false,\\\"removeSmallFeatures\\\":{\\\"removalPercentage\\\":0}},\\\"assetSimplification\\\":{\\\"meshDecimation\\\":{\\\"method\\\":\\\"rebake\\\"},\\\"topologySettings\\\":{\\\"vertexMergingDistance\\\":0.005,\\\"meshDensityEqualization\\\":0,\\\"boundaryPreservationFactor\\\":0.5,\\\"preserveTopology\\\":false},\\\"uvAndAtlasSettings\\\":{\\\"uvStretchTolerance\\\":0},\\\"materialAndTextureBaking\\\":{\\\"bakingQuality\\\":\\\"medium\\\",\\\"bakeNormalMap\\\":true,\\\"bakeAOMap\\\":true}},\\\"compressionAndExport\\\":{\\\"fileExports\\\":[{\\\"fileType\\\":\\\"glb\\\",\\\"meshCompressionMethod\\\":\\\"none\\\",\\\"customScaling\\\":1,\\\"textureFormat\\\":{\\\"baseColor\\\":\\\"auto\\\",\\\"emissive\\\":\\\"auto\\\",\\\"normal\\\":\\\"auto\\\",\\\"orm\\\":\\\"auto\\\"}},{\\\"fileType\\\":\\\"usdz\\\",\\\"meshCompressionMethod\\\":\\\"none\\\",\\\"customScaling\\\":1,\\\"textureFormat\\\":{\\\"baseColor\\\":\\\"auto\\\",\\\"emissive\\\":\\\"auto\\\",\\\"normal\\\":\\\"auto\\\",\\\"orm\\\":\\\"auto\\\"}},{\\\"fileType\\\":\\\"obj\\\",\\\"meshCompressionMethod\\\":\\\"none\\\",\\\"customScaling\\\":1,\\\"textureFormat\\\":{\\\"baseColor\\\":\\\"auto\\\",\\\"emissive\\\":\\\"auto\\\",\\\"normal\\\":\\\"auto\\\",\\\"orm\\\":\\\"auto\\\"}}]},\\\"schema\\\":\\\"2.5\\\",\\\"limits\\\":{\\\"faces\\\":{\\\"percentage\\\":50},\\\"textures\\\":{\\\"baseColor\\\":2048,\\\"emissive\\\":2048,\\\"normal\\\":2048,\\\"orm\\\":2048}}}\",\n \"rpdx_version\":\"6.1.1\",\n \"user_id\":328,\n \"created_at\":\"2023-01-22T09:11:30.000000Z\",\n \"updated_at\":\"2023-01-22T09:11:30.000000Z\",\n \"description\":\"\",\n \"meta\":\"{\\\"filename\\\": {\\\"useId\\\": false, \\\"useSuffix\\\": null, \\\"usePresetName\\\": false}}\"\n }\n]", "name": "success" } ] } ] }, { "name": "Rapid Model", "description": "", "item": [ { "name": "Get Rapid Models", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel", "query": [ { "key": "q", "value": "yourSearchString", "description": "Optional parameter to search for rapid models by name or tag", "disabled": false } ], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel?q=yourSearchString" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Paginated response of your rapid models. Search for rapid models by name or tag" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": [\n {\n \"id\": 1,\n \"name\": \"teapot \",\n \"optimization_status\": \"done\",\n \"created_at\": \"2022-05-24T16:28:56+02:00\",\n \"updated_at\": \"2022-05-24T16:29:11+02:00\",\n \"processing_step\": \"Done\",\n \"external\": false,\n \"rapid_compact_core_version\": \"6.1.1\",\n \"tags\": [\n {\n \"id\": 1,\n \"name\": \"Low-Poly\",\n \"created_at\": \"2022-05-24 15:06:03\",\n \"updated_at\": \"2022-05-24 15:06:03\",\n \"rapid_id\": 1\n },\n ],\n \"export_name\": \"teapot_1\",\n \"uuid\": \"f26cf299-c8df-4d4d-9eef-3f8e87d882b7\",\n \"accepted\": false,\n \"meta\": {\n \"size\": 665168,\n \"exportSize\": 1495763\n },\n \"origin\": \"\",\n \"optimization_formats\": \"[...]\",\n \"thumbnail\": {\n \"first\": \"signed url\",\n \"turntable\": \"signed url\"\n },\n \"model\": {\n \"rootUrl\": \"rootURL\",\n \"fileName\": \"fileName\"\n },\n \"rpd_info\": \"signed url\",\n \"rpd_warnings\": \"signed url\",\n \"downloads\": {\n \"usdz\": \"signed url\",\n \"glb\": \"signed url\",\n \"all\": {\n \"rapid.glb\": \"signed url\",\n \"rapid.usdz\": \"signed url\"\n }\n }\n }\n ],\n \"links\": {\n \"first\": \"https:\/\/url\/api\/v2\/rapidmodel?page=1\",\n \"last\": \"https:\/\/url\/api\/v2\/rapidmodel?page=1\",\n \"prev\": null,\n \"next\": null\n },\n \"meta\": {\n \"current_page\": 1,\n \"from\": 1,\n \"last_page\": 1,\n \"links\": [\n {\n \"url\": null,\n \"label\": \"« Previous\",\n \"active\": false\n },\n {\n \"url\": \"https:\/\/url\/api\/v2\/rapidmodel?page=1\",\n \"label\": \"1\",\n \"active\": true\n },\n {\n \"url\": null,\n \"label\": \"Next »\",\n \"active\": false\n }\n ],\n \"path\": \"https:\/\/url\/api\/v2\/rapidmodel\",\n \"per_page\": 12,\n \"to\": 1,\n \"total\": 1\n }\n}", "name": "success" } ] }, { "name": "Get Rapid Model", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "635", "description": "The id of the rapid model" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": {\n \"id\": 635,\n \"name\": \"teapot \",\n \"optimization_status\": \"done\",\n \"created_at\": \"2021-02-16T16:50:41+01:00\",\n \"updated_at\": \"2021-02-16T16:50:53+01:00\",\n \"processing_step\": \"Done\",\n \"external\": false,\n \"rapid_compact_core_version\": \"6.1.1\",\n \"tags\": [\n {\n \"id\": 377,\n \"name\": \"Preserve UVs\",\n \"created_at\": \"2024-02-15 18:05:36+00\",\n \"updated_at\": \"2024-02-15 18:05:36+00\",\n \"rapid_id\": 635\n }\n ],\n \"export_name\": null,\n \"uuid\": \"d8316d1f-3c7d-4777-b72e-c760064f9d08\",\n \"accepted\": false,\n \"meta\": {\n \"size\": 573420,\n \"exportSize\": 1029548\n },\n \"origin\": \"\",\n \"optimization_formats\": \"[...]\",\n \"thumbnail\": {\n \"first\": \"signed url for the thumbnail\",\n \"turntable\": {\n \"rapid.glb\": \"signed url for theturntable\"\n }\n },\n \"model\": {\n \"rootUrl\": \"s3 link\",\n \"fileName\": \"rapid.glb?signed\"\n },\n \"rpd_info\": \"signed url for rpd_info.json\",\n \"rpd_warnings\": \"signed url for the warning.log\",\n \"metrics\": \"signed url for the metrics.json\",\n \"downloads\": {\n \"glb\": \"signed url for the .glb\",\n \"all\": {\n \"rapid.glb\": \"signed url for the .glb\"\n }\n }\n }\n}", "name": "" } ] }, { "name": "Delete Rapid Model", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "635", "description": "The id of the rapid model" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Get Export Infos", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id\/exports", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id\/exports", "variable": [ { "id": "id", "key": "id", "value": "695", "description": "The id of the rapid model" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Calling this endpoint return a list of links to download the exports and their respective infos\n\nPlease note that the export infos are generated only for glb and gltf formats" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": {\n \"rapid.glb\": {\n \"download\": \"signed s3 link to rapid.glb\",\n \"info\": {\n \"images\": [\n {\n \"channels\": 3,\n \"compressedByteSize\": 310996,\n \"height\": 2048,\n \"mimetype\": \"image\/jpeg\",\n \"slot\": \"normal\",\n \"width\": 2048\n }\n ]\n }\n },\n \"rapid.usdz\": {\n \"download\": \"link to rapid.usdz\",\n \"info\": null\n }\n }\n}", "name": "" } ] }, { "name": "Delete Tag of a Rapid Model", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id\/tags\/:tagId", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id\/tags\/:tagId", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the base asset" }, { "id": "tagId", "key": "tagId", "value": "2", "description": "The id of the tag that will be deleted" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Add Tags to a Rapid Model", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the rapid model" } ] }, "method": "PUT", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"tags\":[\"chair\",\"brown\"]}" }, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Download used Preset from Rapid Model", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/:id\/download\/preset", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/:id\/download\/preset", "variable": [ { "id": "id", "key": "id", "value": "281", "description": "The id of the preset" } ] }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Downloads a preset as zip file which contains API and CLI formats\n\nOnly available for Rapidmodels that were optimized after 2023-03" }, "response": [ { "header": [], "code": 200, "body": " Streamed Response", "name": "success" }, { "header": [], "code": 404, "body": "Only available for Rapidmodels that were optimized after 2023-03", "name": "error" } ] }, { "name": "Delete Multiple Rapid Models", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/delete", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/delete" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"ids\":[726,324]}" }, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] } ] }, { "name": "Tags", "description": "", "item": [ { "name": "Get all Base Asset Tags", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rawmodel\/tags", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rawmodel\/tags" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": [\n {\"name\": \"My custom tag\"},\n {\"name\": \"Foo\"},\n {\"name\": \"Bar\"}\n ]\n}", "name": "success" } ] }, { "name": "Get all Rapid Model Tags", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/rapidmodel\/tags", "query": [], "raw": "{{baseUrl}}\/api\/v2\/rapidmodel\/tags" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"data\": [\n {\"name\": \"5 MB\"},\n {\"name\": \"Medium Resolution\"},\n {\"name\": \"Low-scene complexity\"}\n ]\n}", "name": "success" } ] } ] }, { "name": "User", "description": "APIs for managing user profile.", "item": [ { "name": "Login", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/login", "query": [], "raw": "{{baseUrl}}\/api\/v2\/login" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"email\":\"yourname@example.com\",\"password\":\"your password\"}" }, "description": "Returns a token that can be used for calling other endpoints", "auth": { "type": "noauth" } }, "response": [ { "header": [ { "key": "cache-control", "value": "no-cache, private" }, { "key": "content-type", "value": "application\/json" }, { "key": "x-ratelimit-limit", "value": "2000" }, { "key": "x-ratelimit-remaining", "value": "1999" }, { "key": "x-frame-options", "value": "ALLOWALL" }, { "key": "vary", "value": "Origin" } ], "code": 422, "body": "{\"message\":\"These credentials do not match our records.\",\"errors\":{\"email\":[\"These credentials do not match our records.\"]}}", "name": "" } ] }, { "name": "Delete Account", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/delete", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/delete" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"password\":\"\\\"your password\\\"\"}" }, "description": "Delete the user account and all the data associated with it" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Get RapidPoints", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/rapidpoints", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/rapidpoints" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n \"rapidpoints\": 20\n}", "name": "success" } ] }, { "name": "Get Storage Left", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/storage", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/storage" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "Returns how much storage you have left to use (bytes)" }, "response": [ { "header": [], "code": 200, "body": "{\n \"storage_left\": 107374182400\n}", "name": "success" } ] } ] }, { "name": "Webhooks", "description": "\nRapidCompact uses webhooks to notify your application when an event happens in your account.\nWebhooks are particularly useful for upload and optimization events. Instead of polling the API to know the status\nof your upload or optimization, RapidCompact sends an event to your webhook.\n\nBegin using webhooks with your RapidCompact integration in just three steps:\n1. Create a webhook endpoint on your server\n2. [Register](https:\/\/app.rapidcompact.com\/app\/webhooks) the endpoint with RapidCompact to go live\n3. Test your endpoint by clicking the test button in the [webhooks page](https:\/\/app.rapidcompact.com\/app\/webhooks)\n\n### What are webhooks\nThe webhook endpoint is just more code on your server, which could be written in Ruby, PHP, Node.js, or whatever.\nThe webhook endpoint has an associated URL (e.g., https:\/\/example.com\/webhooks).\nThe RapidCompact notifications are Event objects sent as POST requests (Fire-and-forget, no retry).\nThis Event object contains all the relevant information about what just happened, including the type of event and the data associated with that event.\nThe webhook endpoint uses the event details to take any required actions, such as indicating that an optimization should be done.\n\n### Validation\nIn order to validate an incoming webhook event you need to first set up a secret when creating it on RapidCompact. This secret will be used to sign the body and send the signature as part of the requests header. You can use this secret on your receiving endpoint to validate the content of the body by signing it with the same secret. For an example check out this repository: https:\/\/github.com\/DGG3D\/webhook-api-example\n\n### Optimization Events\nRapidCompact sends the \"optimization_finished\" event. You can see an example on the right side\n```\n {\n \"event_type\": \"optimization_finished\",\n \"timestamp\": \"2023-01-19T15:03:08.076920Z\",\n \"data\": {\n \"status\": \"Successful\",\n \"message\": \"Optimization has ended and your rapid model is available to download.\",\n \"rawmodel_id\": 1961,\n \"rapidmodel_id\": 4213,\n \"rapidmodel\": {\n \"rapid.glb\": \"link to rapid model\"\n }\n }\n }\n```\n\n### Upload Events\nRapidCompact sends an \"analysis_finished\" event when your uploaded model has been finished being analyzed and is now ready to be optimized. You can see an two examples for the successful and failed state on the right side.\n\nFor uploaded zip files RapidCompact sends an \"unzip_finished\" event when your model has been finished being unzipped and is going to be analysed next. You can see an two examples for the successful and failed state on the right side.\n\n```\n {\n \"event_type\": \"analysis_finished\",\n \"timestamp\": \"2023-01-02T15:03:08.076920Z\",\n \"data\": {\n \"status\": \"Successful\",\n \"message\": \"Model analysis has ended and your base asset is ready to be optimized.\",\n \"rawmodel_id\": 1961,\n }\n }\n```\n```\n {\n \"event_type\": \"analysis_finished\",\n \"timestamp\": \"2023-01-02T15:03:08.076920Z\",\n \"data\": {\n \"status\": \"Failed\",\n \"message\": \"Analysis failed\",\n \"rawmodel_id\": 1961,\n }\n }\n```\n```\n {\n \"event_type\": \"unzip_finished\",\n \"timestamp\": \"2024-01-02T15:03:08.076920Z\",\n \"data\": {\n \"status\": \"Successful\",\n \"message\": \"Model successfully unzipped.\",\n \"rawmodel_id\": 1961,\n }\n }\n```\n```\n {\n \"event_type\": \"unzip_finished\",\n \"timestamp\": \"2024-01-02T15:03:08.076920Z\",\n \"data\": {\n \"status\": \"Failed\",\n \"message\": \"Unzip failed\",\n \"rawmodel_id\": 1961,\n }\n }\n```", "item": [ { "name": "Get Webhooks", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/webhooks", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/webhooks" }, "method": "GET", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "[\n\t{\n\t\t\"id\": 6,\n\t\t\"user_id\": 303,\n\t\t\"url\": \"https:\/\/mywebhookurl.com\",\n\t\t\"last_called_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"created_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"updated_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"secret\": \"secret\",\n\t\t\"last_status\": null,\n\t\t\"verify_ssl\": true,\n\t\t\"failed_calls\": 0,\n\t\t\"notified_at\": null\n\t}\n]", "name": "success" } ] }, { "name": "Create Webhook", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/webhooks", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/webhooks" }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": { "mode": "raw", "raw": "{\"url\":\"https:\\\/\\\/example.com\\\/webhook\",\"secret\":\"my secret\",\"verify_ssl\":false}" }, "description": "" }, "response": [ { "header": [], "code": 200, "body": "{\n\t\t\"id\": 6,\n\t\t\"user_id\": 303,\n\t\t\"url\": \"https:\/\/example.com\/webhook\",\n\t\t\"last_called_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"created_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"updated_at\": \"2021-10-26T09:45:47.000000Z\",\n\t\t\"secret\": \"aut\",\n\t\t\"last_status\": null,\n\t\t\"verify_ssl\": true,\n\t\t\"failed_calls\": 0,\n\t\t\"notified_at\": null\n\t}", "name": "success" }, { "header": [], "code": 500, "body": "[\n \"code\": 1,\n \"message\": \"Maximum number of webhooks allowed already created\"\n]", "name": "Maximum number of tags reached" } ] }, { "name": "Delete Webhook", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/webhooks\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/webhooks\/:id", "variable": [ { "id": "id", "key": "id", "value": "1", "description": "The id of the webhook" } ] }, "method": "DELETE", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] }, { "name": "Test Webhook", "request": { "url": { "host": "{{baseUrl}}", "path": "api\/v2\/user\/webhooks\/test\/:id", "query": [], "raw": "{{baseUrl}}\/api\/v2\/user\/webhooks\/test\/:id", "variable": [ { "id": "id", "key": "id", "value": "1", "description": "The id of the webhook" } ] }, "method": "POST", "header": [ { "key": "Content-Type", "value": "application\/json" }, { "key": "Accept", "value": "application\/json" } ], "body": null, "description": "A test event will be sent to the webhook to make sure it is accessible and can receive events\n\nCall the \"Test Webhook\" endpoint again to see if the webhook was successfully invoked" }, "response": [ { "header": [], "code": 200, "body": "", "name": "success" } ] } ] } ], "auth": { "type": "bearer", "bearer": [ { "key": "token", "type": "string" } ] } }