# Redline Autohaus Tuning — runnable REST Client/JetBrains HTTP collection # Every account, ID and file below is synthetic. Run individual requests deliberately. # Authenticated requests use the API cookie jar; never add server/DB credentials here. @baseUrl = https://api.redlineautohaus.com/api/v1/tuning @origin = https://redlineautohaus.com @email = customer@example.test @password = synthetic example passphrase # Replace for each register/login attempt; Turnstile tokens are single-use. @turnstileToken = REPLACE_WITH_FRESH_TURNSTILE_TOKEN @csrf = REPLACE_WITH_LOGIN_OR_SESSION_CSRF @etag = "1" @idempotencyKey = REPLACE_WITH_UNIQUE_OPERATION_KEY @fileId = 22222222-2222-4222-8222-222222222222 @versionId = 33333333-3333-4333-8333-333333333333 @releaseId = 11111111-1111-4111-8111-111111111111 @userId = 44444444-4444-4444-8444-444444444444 @grantId = 55555555-5555-4555-8555-555555555555 @sessionId = 66666666-6666-4666-8666-666666666666 @id = 77777777-7777-4777-8777-777777777777 @itemId = 88888888-8888-4888-8888-888888888888 @profileId = 99999999-9999-4999-8999-999999999999 # For contributions, @id is the contribution UUID returned by POST /contributions. # Use the current server contributionRightsVersion and reviewed terms; synthetic examples do not authorize publication. ### Create a customer account [public] # @name register POST {{baseUrl}}/auth/register Origin: {{origin}} Content-Type: application/json { "email": "{{email}}", "password": "{{password}}", "displayName": "Example", "turnstileToken": "{{turnstileToken}}" } ### Sign in with a tuning account [public] # @name login POST {{baseUrl}}/auth/login Origin: {{origin}} Content-Type: application/json { "email": "{{email}}", "password": "{{password}}", "turnstileToken": "{{turnstileToken}}" } ### Restore the current session [customer] # @name session GET {{baseUrl}}/auth/session ### Revoke the current session [customer] # @name logout POST {{baseUrl}}/auth/logout Origin: {{origin}} X-CSRF-Token: {{csrf}} ### Revoke all own sessions [customer] # @name logoutAll POST {{baseUrl}}/auth/logout-all Origin: {{origin}} X-CSRF-Token: {{csrf}} ### Consume an email verification link [public] # @name verifyEmail POST {{baseUrl}}/auth/verify-email Origin: {{origin}} Content-Type: application/json { "token": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" } ### Request another verification email [public] # @name resendVerification POST {{baseUrl}}/auth/resend-verification Origin: {{origin}} Content-Type: application/json { "email": "customer@example.test" } ### Request password recovery [public] # @name forgotPassword POST {{baseUrl}}/auth/forgot-password Origin: {{origin}} Content-Type: application/json { "email": "customer@example.test" } ### Consume a password-reset token [public] # @name resetPassword POST {{baseUrl}}/auth/reset-password Origin: {{origin}} Content-Type: application/json { "token": "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", "newPassword": "synthetic example passphrase" } ### Select a bounded purchase reconciliation page [admin] # @name purchaseReconciliationList GET {{baseUrl}}/admin/purchases/reconciliation ### Dry-run local financial consistency and optional provider proof [admin] # @name purchaseReconciliation GET {{baseUrl}}/admin/purchases/{{orderId}}/reconciliation ### Run one permanently identified proof-driven staff resolution [admin] # @name resolvePurchase POST {{baseUrl}}/admin/purchases/{{orderId}}/resolutions Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Idempotency-Key: {{idempotencyKey}} Content-Type: application/json { "inboxId": null, "reason": "Synthetic reconciliation review" } ### Read server-priced test credit packs [public] # @name checkoutPacks GET {{baseUrl}}/credits/packs ### Create or reconcile own Checkout attempt [customer] # @name createCheckout POST {{baseUrl}}/credits/checkout Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "packKey": "synthetic-pack", "catalogueRevision": "synthetic-v1", "attemptKey": "synthetic-attempt" } ### List own purchase history [customer] # @name ownPurchases GET {{baseUrl}}/me/purchases ### Read own purchase status [customer] # @name ownPurchase GET {{baseUrl}}/me/purchases/{{orderId}} ### Read own profile [customer] # @name profile GET {{baseUrl}}/me ### Edit own profile [customer] # @name updateProfile PATCH {{baseUrl}}/me Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "displayName": "Example Customer" } ### Read own company verification summary [customer] # @name ownCompanyVerification GET {{baseUrl}}/me/company-verification ### Change own password [customer] # @name changePassword POST {{baseUrl}}/me/change-password Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "currentPassword": "synthetic example passphrase", "newPassword": "synthetic example passphrase" } ### List own active sessions [customer] # @name sessions GET {{baseUrl}}/me/sessions ### Revoke one own session [customer] # @name revokeSession DELETE {{baseUrl}}/me/sessions/{{sessionId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} ### List own download history [customer] # @name myDownloads GET {{baseUrl}}/me/downloads ### List own manual grants [customer] # @name myGrants GET {{baseUrl}}/me/grants ### Read public brand/contact settings [public] # @name site GET {{baseUrl}}/site ### List available vehicle-makes [public] # @name listPublicVehicleMakes GET {{baseUrl}}/catalog/vehicle-makes ### Manage vehicle-makes [editor] # @name listAdminVehicleMakes GET {{baseUrl}}/admin/catalog/vehicle-makes ### Create vehicle-makes [editor] # @name createVehicleMake POST {{baseUrl}}/admin/catalog/vehicle-makes Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "name": "Example", "slug": "Example" } ### Read one vehicle-makes [editor] # @name getVehicleMake GET {{baseUrl}}/admin/catalog/vehicle-makes/{{id}} ### Update vehicle-makes [editor] # @name updateVehicleMake PATCH {{baseUrl}}/admin/catalog/vehicle-makes/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "name": "Example" } ### List available vehicle-models [public] # @name listPublicVehicleModels GET {{baseUrl}}/catalog/vehicle-models ### Manage vehicle-models [editor] # @name listAdminVehicleModels GET {{baseUrl}}/admin/catalog/vehicle-models ### Create vehicle-models [editor] # @name createVehicleModel POST {{baseUrl}}/admin/catalog/vehicle-models Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "makeId": "11111111-1111-4111-8111-111111111111", "name": "Example", "slug": "Example" } ### Read one vehicle-models [editor] # @name getVehicleModel GET {{baseUrl}}/admin/catalog/vehicle-models/{{id}} ### Update vehicle-models [editor] # @name updateVehicleModel PATCH {{baseUrl}}/admin/catalog/vehicle-models/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "makeId": "11111111-1111-4111-8111-111111111111" } ### List available vehicle-variants [public] # @name listPublicVehicleVariants GET {{baseUrl}}/catalog/vehicle-variants ### Manage vehicle-variants [editor] # @name listAdminVehicleVariants GET {{baseUrl}}/admin/catalog/vehicle-variants ### Create vehicle-variants [editor] # @name createVehicleVariant POST {{baseUrl}}/admin/catalog/vehicle-variants Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "modelId": "11111111-1111-4111-8111-111111111111", "variantKey": "Example", "name": "Example" } ### Read one vehicle-variants [editor] # @name getVehicleVariant GET {{baseUrl}}/admin/catalog/vehicle-variants/{{id}} ### Update vehicle-variants [editor] # @name updateVehicleVariant PATCH {{baseUrl}}/admin/catalog/vehicle-variants/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "modelId": "11111111-1111-4111-8111-111111111111" } ### List available ecu-manufacturers [public] # @name listPublicEcuManufacturers GET {{baseUrl}}/catalog/ecu-manufacturers ### Manage ecu-manufacturers [editor] # @name listAdminEcuManufacturers GET {{baseUrl}}/admin/catalog/ecu-manufacturers ### Create ecu-manufacturers [editor] # @name createEcuManufacturer POST {{baseUrl}}/admin/catalog/ecu-manufacturers Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "name": "Example", "slug": "Example" } ### Read one ecu-manufacturers [editor] # @name getEcuManufacturer GET {{baseUrl}}/admin/catalog/ecu-manufacturers/{{id}} ### Update ecu-manufacturers [editor] # @name updateEcuManufacturer PATCH {{baseUrl}}/admin/catalog/ecu-manufacturers/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "name": "Example" } ### List available ecu-types [public] # @name listPublicEcuTypes GET {{baseUrl}}/catalog/ecu-types ### Manage ecu-types [editor] # @name listAdminEcuTypes GET {{baseUrl}}/admin/catalog/ecu-types ### Create ecu-types [editor] # @name createEcuType POST {{baseUrl}}/admin/catalog/ecu-types Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "manufacturerId": "11111111-1111-4111-8111-111111111111", "name": "Example", "slug": "Example" } ### Read one ecu-types [editor] # @name getEcuType GET {{baseUrl}}/admin/catalog/ecu-types/{{id}} ### Update ecu-types [editor] # @name updateEcuType PATCH {{baseUrl}}/admin/catalog/ecu-types/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "manufacturerId": "11111111-1111-4111-8111-111111111111" } ### Explore published files [public] # @name files GET {{baseUrl}}/files ### Count visible filter values [public] # @name fileFacets GET {{baseUrl}}/files/facets ### Read a public file detail [public] # @name file GET {{baseUrl}}/files/{{fileId}} If-None-Match: REPLACE_ME ### Read exact visible associations [public] # @name relatedFiles GET {{baseUrl}}/files/{{fileId}}/related ### Download current authorized bytes [customer] # @name downloadFile GET {{baseUrl}}/files/{{fileId}}/download ### Find public software releases [public] # @name softwareReleases GET {{baseUrl}}/software-releases ### Read public release and files [public] # @name softwareRelease GET {{baseUrl}}/software-releases/{{releaseId}} ### Manage software releases [editor] # @name adminSoftwareReleases GET {{baseUrl}}/admin/software-releases ### Create a software release [editor] # @name createSoftwareRelease POST {{baseUrl}}/admin/software-releases Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "ecuTypeId": "11111111-1111-4111-8111-111111111111", "displayName": "Example", "identifiers": [] } ### Read staff release detail [editor] # @name adminSoftwareRelease GET {{baseUrl}}/admin/software-releases/{{releaseId}} ### Update release metadata [editor] # @name updateSoftwareRelease PATCH {{baseUrl}}/admin/software-releases/{{releaseId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "displayName": "Synthetic release display label" } ### Replace release identifiers [editor] # @name replaceIdentifiers PUT {{baseUrl}}/admin/software-releases/{{releaseId}}/identifiers Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "identifiers": [] } ### Replace vehicle fitment evidence [editor] # @name replaceFitments PUT {{baseUrl}}/admin/software-releases/{{releaseId}}/vehicle-fitments Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "fitments": [] } ### Manage tuning files [editor] # @name adminFiles GET {{baseUrl}}/admin/files ### Upload a new draft entry [editor] # @name uploadFile POST {{baseUrl}}/admin/files Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "original_bin", "title": "Synthetic original read", "versionLabel": "Original read 1", "readType": "full", "readMethod": "bench", "readTool": "Staff-recorded tool", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic fixture identifiers checked against fixture report." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original.bin --redline-tuning-example-- ### Read staff file detail [editor] # @name adminFile GET {{baseUrl}}/admin/files/{{fileId}} ### Edit file metadata [editor] # @name updateFile PATCH {{baseUrl}}/admin/files/{{fileId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "title": "Synthetic original read" } ### List immutable revisions [editor] # @name fileVersions GET {{baseUrl}}/admin/files/{{fileId}}/versions ### Upload a new revision [editor] # @name uploadVersion POST {{baseUrl}}/admin/files/{{fileId}}/versions Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "versionLabel": "Revision 2" } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original.bin --redline-tuning-example-- ### Read an exact staff revision [editor] # @name fileVersion GET {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}} ### Edit unlocked version metadata [editor] # @name updateVersion PATCH {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "versionLabel": "Revision 2" } ### Replace version release links [editor] # @name replaceVersionReleases PUT {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}}/releases Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "releaseLinks": [] } ### Replace definition/document links [editor] # @name replaceVersionRelations PUT {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}}/relations Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "relations": [] } ### Mark ready or rejected [editor] # @name reviewVersion POST {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}}/review Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "reviewState": "draft" } ### Download exact staff version [editor] # @name downloadVersion GET {{baseUrl}}/admin/files/{{fileId}}/versions/{{versionId}}/download ### Publish or roll back to a ready version [admin] # @name publishFile POST {{baseUrl}}/admin/files/{{fileId}}/publish Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Idempotency-Key: {{idempotencyKey}} Content-Type: application/json { "versionId": "11111111-1111-4111-8111-111111111111", "catalogueVisibility": "public", "accessPolicy": "members" } ### Archive a catalogue entry [admin] # @name archiveFile POST {{baseUrl}}/admin/files/{{fileId}}/archive Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "reason": "Example" } ### List tuning accounts [admin] # @name adminUsers GET {{baseUrl}}/admin/users ### Read private company review state [admin] # @name adminCompanyVerification GET {{baseUrl}}/admin/users/{{userId}}/company-verification ### Verify or revoke a company profile [admin] # @name changeCompanyVerification POST {{baseUrl}}/admin/users/{{userId}}/company-verification Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "action": "verify", "reason": "Synthetic company review", "internalNotes": null } ### Read account access [admin] # @name adminUser GET {{baseUrl}}/admin/users/{{userId}} ### Change role or status [admin] # @name updateUserAccess PATCH {{baseUrl}}/admin/users/{{userId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "role": "editor" } ### List an account’s grants [admin] # @name userGrants GET {{baseUrl}}/admin/users/{{userId}}/grants ### Create a manual file grant [admin] # @name createGrant POST {{baseUrl}}/admin/users/{{userId}}/grants Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: application/json { "fileId": "11111111-1111-4111-8111-111111111111", "reason": "Example" } ### Read a grant with ETag [admin] # @name grant GET {{baseUrl}}/admin/grants/{{grantId}} ### Update, revoke or reactivate a grant [admin] # @name updateGrant PATCH {{baseUrl}}/admin/grants/{{grantId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "action": "update", "reason": "Example" } ### Read sanitized audit records [admin] # @name auditEvents GET {{baseUrl}}/admin/audit-events ### Update approved public settings [admin] # @name updateSite PATCH {{baseUrl}}/admin/site Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "phoneDisplay": "+1 519 997 2356" } ### Read administrative site and add-on controls [admin] # @name adminSite GET {{baseUrl}}/admin/site ### list Api Keys [customer] # @name listApiKeys GET {{baseUrl}}/me/api-keys ### create Api Key [customer] # @name createApiKey POST {{baseUrl}}/me/api-keys Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "name": "Example", "permissions": [], "expiresInDays": 1, "currentPassword": "Example" } ### revoke All Api Keys [customer] # @name revokeAllApiKeys POST {{baseUrl}}/me/api-keys/revoke-all Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "currentPassword": "Example" } ### update Api Key [customer] # @name updateApiKey PATCH {{baseUrl}}/me/api-keys/{{id}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "currentPassword": "Example" } ### revoke Api Key [customer] # @name revokeApiKey DELETE {{baseUrl}}/me/api-keys/{{id}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "currentPassword": "Example" } ### rotate Api Key [customer] # @name rotateApiKey POST {{baseUrl}}/me/api-keys/{{id}}/rotate If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "expiresInDays": 1, "overlapMinutes": 0, "currentPassword": "Example" } ### find Api Accounts [admin] # @name findApiAccounts GET {{baseUrl}}/admin/api-access/users ### update Api Account [admin] # @name updateApiAccount PATCH {{baseUrl}}/admin/api-access/users/{{id}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "apiAccessEnabled": false, "requestsPerMinute": 1, "currentPassword": "Example", "reason": "Example" } ### admin List Api Keys [admin] # @name adminListApiKeys GET {{baseUrl}}/admin/api-access/keys?userId={{userId}} ### admin Update Api Key [admin] # @name adminUpdateApiKey PATCH {{baseUrl}}/admin/api-access/keys/{{id}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "permissions": [], "disabled": false, "currentPassword": "Example", "reason": "Example" } ### get Uds Api Administration [admin] # @name getUdsApiAdministration GET {{baseUrl}}/admin/api-access/uds ### update Uds Api Policy [admin] # @name updateUdsApiPolicy PATCH {{baseUrl}}/admin/api-access/uds If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "approve": false, "revise": false, "redact": false, "publish": false, "currentPassword": "Example", "reason": "Example" } ### set Uds Administrative Grant [admin] # @name setUdsAdministrativeGrant PUT {{baseUrl}}/admin/api-access/uds/grants If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "principalType": "developer", "principalId": "Example", "scopeId": "11111111-1111-4111-8111-111111111111", "capabilities": [], "disabled": false, "currentPassword": "Example", "reason": "Example" } ### Read spendable balance and separate pending reward estimate [customer] # @name getCreditWallet GET {{baseUrl}}/me/credits ### Read own append-only credit history [customer] # @name getCreditLedger GET {{baseUrl}}/me/credits/ledger ### Read exact-version access and current availability [customer] # @name getAcquiredVersions GET {{baseUrl}}/me/acquisitions ### Snapshot one version price without reserving or spending credits [customer] # @name quoteDownload POST {{baseUrl}}/files/{{fileId}}/download-quote Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "versionId": "11111111-1111-4111-8111-111111111111" } ### Atomically acquire one quoted exact version; retries never charge twice [customer] # @name acquireDownload POST {{baseUrl}}/download-acquisitions Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "quoteId": "11111111-1111-4111-8111-111111111111" } ### Read immutable policy versions and activation history [admin] # @name getCreditPolicies GET {{baseUrl}}/admin/credit-policies ### Create a policy without activating it; prices must exceed positive rewards [admin] # @name createCreditPolicy POST {{baseUrl}}/admin/credit-policies Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "stockReward": "10", "stockPrice": "30", "a2lReward": "50", "a2lPrice": "150", "tunedReward": "20", "tunedPrice": "60", "effectiveAt": "2026-09-17T00:00:00.000Z", "reason": "Synthetic example policy; production rates require approval." } ### Activate policy after validating every current file override [admin] # @name activateCreditPolicy POST {{baseUrl}}/admin/credit-policies/{{id}}/activate Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "reason": "Example" } ### Append documented signed adjustment; never patch history [admin] # @name adjustCredits POST {{baseUrl}}/admin/credit-adjustments Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "userId": "11111111-1111-4111-8111-111111111111", "amount": "30", "reason": "Example" } ### Compensate a reward once and retain its consumed canonical claim [admin] # @name reverseReward POST {{baseUrl}}/admin/reward-claims/{{id}}/reverse Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "reason": "Example" } ### Refund once and revoke the affected entitlement [admin] # @name refundAcquisition POST {{baseUrl}}/admin/download-acquisitions/{{id}}/refund Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "reason": "Example" } ### Set an audited review hold without deleting credits [admin] # @name restrictCreditWallet PATCH {{baseUrl}}/admin/credits/{{userId}}/restriction Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "restriction": "none", "reason": "Example" } ### Apply mandatory gates and atomically publish and reward unique accepted content [admin] # @name decideContributionItem POST {{baseUrl}}/admin/contribution-items/{{itemId}}/decision Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "decision": "accept", "reason": "Example", "evidenceIds": [] } ### Record genuine staff provenance for the current stock verification attempt [admin] # @name recordStockProvenance POST {{baseUrl}}/admin/contribution-items/{{itemId}}/evidence Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "summary": "Example", "sourceReference": "Example", "basis": "documented_original_read" } ### Find bounded staff-only exact hash or shared software review candidates [editor] # @name getDuplicateCandidates GET {{baseUrl}}/admin/contribution-items/{{itemId}}/duplicate-candidates ### Record proof-backed equivalence without merging rewarded identities [admin] # @name recordStaffEquivalence POST {{baseUrl}}/admin/contribution-items/{{itemId}}/equivalence Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "canonicalContributionId": "11111111-1111-4111-8111-111111111111", "reason": "Example", "sourceReference": "Example", "evidenceIds": [] } ### Append an exact evidenced stock association without another reward [admin] # @name appendA2lStockAssociation POST {{baseUrl}}/admin/file-versions/{{versionId}}/stock-associations Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "stockVersionId": "11111111-1111-4111-8111-111111111111", "reason": "Example", "evidenceIds": [] } ### Review legacy bytes using an exact inspected attempt without retroactive rewards [admin] # @name reviewLegacyCredits POST {{baseUrl}}/admin/file-versions/{{versionId}}/credit-review Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "verificationItemId": "11111111-1111-4111-8111-111111111111", "reason": "Example", "evidenceIds": [] } ### Block this version and place dependent versions on review hold [admin] # @name withdrawFileVersion POST {{baseUrl}}/admin/file-versions/{{versionId}}/withdraw Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "reason": "Example" } ### Inspect a user balance and restriction with its ETag [admin] # @name getAdminCreditWallet GET {{baseUrl}}/admin/credits?userId={{userId}} ### Audit a user credit history [admin] # @name getAdminCreditLedger GET {{baseUrl}}/admin/credit-ledger?userId={{userId}} ### Inspect reward claim and reversal identifiers [admin] # @name getAdminRewardClaims GET {{baseUrl}}/admin/reward-claims?userId={{userId}} ### Inspect acquisition and refund identifiers [admin] # @name getAdminAcquisitions GET {{baseUrl}}/admin/download-acquisitions?userId={{userId}} ### Download unchanged acquired bytes without a credit debit [customer] # @name downloadExactVersion GET {{baseUrl}}/files/{{fileId}}/versions/{{versionId}}/download ### Inspect effective submission limits, terms and reward estimates [public] # @name getContributionConfig GET {{baseUrl}}/contribution-config ### Create an owned unpublished contribution draft [customer] # @name createContribution POST {{baseUrl}}/contributions Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: application/json {} ### Resume owned contribution history and actual per-item outcomes [customer] # @name listOwnContributions GET {{baseUrl}}/contributions ### Read the owned persisted contribution snapshot [customer] # @name getOwnContribution GET {{baseUrl}}/contributions/{{id}} ### Upload a replacement and recheck related files while retaining the original review history [customer] # @name replaceContributionItem POST {{baseUrl}}/contributions/{{id}}/items/{{itemId}}/replace Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "original_bin", "title": "Synthetic original read", "versionLabel": "Original read 1", "readType": "full", "readMethod": "bench", "readTool": "Staff-recorded tool", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic fixture identifiers checked against fixture report." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original.bin --redline-tuning-example-- ### Stage one exact immutable file with unverified customer claims [customer] # @name uploadContributionItem POST {{baseUrl}}/contributions/{{id}}/items Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "clientItemId": "synthetic-item-1", "kind": "original_bin", "claims": { "vehicle": { "make": "Example", "model": "Example", "year": 1900, "variant": "Example", "engine": "Example", "market": "Example" }, "ecu": "Example", "description": "Example", "readType": "full", "readMethod": "obd", "readTool": "Example", "provenance": "Example", "permissionConfirmed": false, "permissionTextVersion": "Example", "identifiers": [], "stage": "Example", "fuelRequirement": "Example", "hardwareRequirements": "Example", "testingEvidence": "Example" } } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original.bin --redline-tuning-example-- ### Correct claims before submission without replacing bytes [customer] # @name editDraftContributionClaims PATCH {{baseUrl}}/contributions/{{id}}/items/{{itemId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "claims": { "vehicle": { "make": "Example", "model": "Example", "year": 1900, "variant": "Example", "engine": "Example", "market": "Example" }, "ecu": "Example", "description": "Example", "readType": "full", "readMethod": "obd", "readTool": "Example", "provenance": "Example", "permissionConfirmed": false, "permissionTextVersion": "Example", "identifiers": [], "stage": "Example", "fuelRequirement": "Example", "hardwareRequirements": "Example", "testingEvidence": "Example" } } ### Delete an unreferenced draft item while retaining immutable blob cleanup policy [customer] # @name deleteDraftContributionItem DELETE {{baseUrl}}/contributions/{{id}}/items/{{itemId}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: application/json {} ### Edit the uploader description and stage in any contribution state using metadataEtag; immutable verification inputs and approval are unchanged [customer] # @name editOwnContributionMetadata PATCH {{baseUrl}}/contributions/{{id}}/items/{{itemId}}/metadata Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "description": "Example", "tuningStage": "stage1" } ### Select owned or visible accepted exact-version dependencies [customer] # @name setDraftContributionDependencies PUT {{baseUrl}}/contributions/{{id}}/items/{{itemId}}/dependencies Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json {} ### Search eligible exact stock/A2L metadata without granting downloads [customer] # @name searchContributionDependencies GET {{baseUrl}}/contribution-dependencies?kind=original_bin ### Freeze claims, terms and rewards and durably enqueue verification [customer] # @name submitContribution POST {{baseUrl}}/contributions/{{id}}/submit Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: application/json {} ### Retry a bounded infrastructure failure against identical immutable inputs [customer] # @name retryContributionVerification POST {{baseUrl}}/contributions/{{id}}/items/{{itemId}}/retry Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: application/json {} ### Cancel pending work transactionally and retain completed decisions [customer] # @name cancelContribution POST {{baseUrl}}/contributions/{{id}}/cancel Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: application/json {} ### Inspect staff review queue with safe parser evidence and reward status [editor] # @name listContributionReviews GET {{baseUrl}}/admin/contribution-reviews ### Inspect contribution evidence and exact dependency graph [editor] # @name getAdminContribution GET {{baseUrl}}/admin/contributions/{{id}} ### Inspect approval blockers, saved AI identity and decision history without changing the file [editor] # @name getStaffReviewContext GET {{baseUrl}}/admin/contribution-items/{{itemId}}/review-context ### Append verification of immutable inputs without awarding again; restartInterrupted restricts the action to failed or expired checks [admin] # @name reverifyContributionItem POST {{baseUrl}}/admin/contribution-items/{{itemId}}/reverify Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Content-Type: application/json { "reason": "Example" } ### List already deployed immutable verification profiles [admin] # @name listVerificationProfiles GET {{baseUrl}}/admin/verification-profiles ### Audit activation of deployed and qualified capabilities [admin] # @name activateVerificationProfile PATCH {{baseUrl}}/admin/verification-profiles/{{id}} Origin: {{origin}} X-CSRF-Token: {{csrf}} If-Match: {{etag}} Content-Type: application/json { "enabled": false, "autoAcceptEnabled": false } ### Replay owned persisted progress by contribution sequence ID [customer] # @name streamContributionProgress GET {{baseUrl}}/contributions/{{id}}/events Accept: text/event-stream Last-Event-ID: 0 ### Configuration [public] # @name forumConfiguration GET {{baseUrl}}/forum/config ### List Threads [public] # @name forumListThreads GET {{baseUrl}}/forum/threads ### Create Thread [customer] # @name forumCreateThread POST {{baseUrl}}/forum/threads Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "title": "Examplex", "body": "Examplexxxxxxxxxxxxx", "topic": "reverse-engineering" } ### Read Thread [public] # @name forumReadThread GET {{baseUrl}}/forum/threads/{{id}} ### Edit Thread [customer] # @name forumEditThread PATCH {{baseUrl}}/forum/threads/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "title": "Examplex", "body": "Examplexxxxxxxxxxxxx", "topic": "reverse-engineering" } ### Remove Thread [customer] # @name forumRemoveThread DELETE {{baseUrl}}/forum/threads/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Remove Reply [customer] # @name forumRemoveReply DELETE {{baseUrl}}/forum/replies/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Edit Reply [customer] # @name forumEditReply PATCH {{baseUrl}}/forum/replies/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "body": "Example" } ### Remove Comment [customer] # @name forumRemoveComment DELETE {{baseUrl}}/forum/comments/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Edit Comment [customer] # @name forumEditComment PATCH {{baseUrl}}/forum/comments/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "body": "Example" } ### List Replies [public] # @name forumListReplies GET {{baseUrl}}/forum/threads/{{id}}/replies ### Create Replies [customer] # @name forumCreateReplies POST {{baseUrl}}/forum/threads/{{id}}/replies Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "body": "Example" } ### List Comments [public] # @name forumListComments GET {{baseUrl}}/forum/entities/{{id}}/comments ### Create Comments [customer] # @name forumCreateComments POST {{baseUrl}}/forum/entities/{{id}}/comments Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "body": "Example" } ### Set Solution [customer] # @name forumSetSolution PUT {{baseUrl}}/forum/threads/{{id}}/solution Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "replyId": "11111111-1111-4111-8111-111111111111" } ### Thread Context [public] # @name forumThreadContext GET {{baseUrl}}/forum/threads/{{id}}/entities ### Edit Context [customer] # @name forumEditContext PUT {{baseUrl}}/forum/threads/{{id}}/entities Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "entities": [] } ### Find Context [public] # @name forumFindContext GET {{baseUrl}}/forum/context ### List Entities [public] # @name forumListEntities GET {{baseUrl}}/forum/entities ### Resolve Entity [customer] # @name forumResolveEntity POST {{baseUrl}}/forum/entities Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Read Entity [public] # @name forumReadEntity GET {{baseUrl}}/forum/entities/{{id}} ### Entity Threads [public] # @name forumEntityThreads GET {{baseUrl}}/forum/entities/{{id}}/threads ### File Discussions [public] # @name forumFileDiscussions GET {{baseUrl}}/forum/files/{{id}}/discussions ### Helpful [customer] # @name forumHelpful POST {{baseUrl}}/forum/{{type}}/{{id}}/reactions Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Remove Helpful [customer] # @name forumRemoveHelpful DELETE {{baseUrl}}/forum/{{type}}/{{id}}/reactions Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Follow [customer] # @name forumFollow POST {{baseUrl}}/forum/follows Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Unfollow [customer] # @name forumUnfollow DELETE {{baseUrl}}/forum/follows/{{id}} Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Following [customer] # @name forumFollowing GET {{baseUrl}}/forum/following ### Report [customer] # @name forumReport POST {{baseUrl}}/forum/reports Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "targetType": "thread", "targetId": "11111111-1111-4111-8111-111111111111", "reason": "spam" } ### Find Members [public] # @name forumFindMembers GET {{baseUrl}}/forum/members ### Member Profile [public] # @name forumMemberProfile GET {{baseUrl}}/forum/members/{{handle}} ### My Profile [customer] # @name forumMyProfile GET {{baseUrl}}/forum/me/profile ### Edit Profile [customer] # @name forumEditProfile PATCH {{baseUrl}}/forum/me/profile Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "handle": "Example" } ### Notifications [customer] # @name forumNotifications GET {{baseUrl}}/forum/notifications ### Read Notifications [customer] # @name forumReadNotifications PATCH {{baseUrl}}/forum/notifications/read Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Upload Attachment [customer] # @name forumUploadAttachment POST {{baseUrl}}/forum/attachments Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "original_bin", "title": "Synthetic original read", "versionLabel": "Original read 1", "readType": "full", "readMethod": "bench", "readTool": "Staff-recorded tool", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic fixture identifiers checked against fixture report." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original.bin --redline-tuning-example-- ### Download Attachment [public] # @name forumDownloadAttachment GET {{baseUrl}}/forum/attachments/{{id}} ### Remove Attachment [customer] # @name forumRemoveAttachment DELETE {{baseUrl}}/forum/attachments/{{id}} Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json {} ### Record Event [public] # @name forumRecordEvent POST {{baseUrl}}/forum/analytics Origin: {{origin}} Content-Type: application/json { "event": "Example" } ### Moderation Reports [editor] # @name forumModerationReports GET {{baseUrl}}/forum/moderation/reports ### Review Report [editor] # @name forumReviewReport PATCH {{baseUrl}}/forum/moderation/reports/{{id}} Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "status": "resolved", "reason": "Example" } ### Moderation Content [editor] # @name forumModerationContent GET {{baseUrl}}/forum/moderation/content ### Moderate [editor] # @name forumModerate POST {{baseUrl}}/forum/moderation/{{type}}/{{id}}/actions Idempotency-Key: {{idempotencyKey}} If-Match: {{etag}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "action": "pin", "reason": "Example" } ### Audit Trail [editor] # @name forumAuditTrail GET {{baseUrl}}/forum/moderation/history ### Revisions [editor] # @name forumRevisions GET {{baseUrl}}/forum/moderation/{{type}}/{{id}}/revisions ### Posting Restriction [editor] # @name forumPostingRestriction POST {{baseUrl}}/forum/moderation/users/{{id}}/sanction Idempotency-Key: {{idempotencyKey}} Origin: {{origin}} X-CSRF-Token: {{csrf}} Content-Type: application/json { "action": "suspend", "reason": "Example" } ### Activity [editor] # @name forumActivity GET {{baseUrl}}/forum/moderation/analytics ### Durably receive a signed tuning purchase notification [provider] # @name receivePurchaseEvent POST {{baseUrl}}/stripe/webhook Content-Type: application/json ### Multipart example: original_bin (synthetic; replace relationship UUIDs) POST {{baseUrl}}/admin/files Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "original_bin", "title": "Synthetic original read", "versionLabel": "Original read 1", "readType": "full", "readMethod": "bench", "readTool": "Staff-recorded tool", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic fixture identifiers checked against fixture report." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-original_bin.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-original_bin.bin --redline-tuning-example-- ### Multipart example: tuned_bin (synthetic; replace relationship UUIDs) POST {{baseUrl}}/admin/files Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "tuned_bin", "title": "Synthetic tuned revision", "versionLabel": "Revision 1", "stage": "stage1", "baselineOriginalVersionId": "22222222-2222-4222-8222-222222222222", "fuelRequirement": "not specified", "hardwareRequirements": "not specified", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic fixture release matches the exact original baseline." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-tuned_bin.bin" Content-Type: application/octet-stream < ./fixtures/synthetic-tuned_bin.bin --redline-tuning-example-- ### Multipart example: a2l (synthetic; replace relationship UUIDs) POST {{baseUrl}}/admin/files Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "a2l", "title": "Synthetic definition document", "versionLabel": "Definition 1", "releaseLinks": [ { "softwareReleaseId": "11111111-1111-4111-8111-111111111111", "matchStatus": "verified", "evidenceNote": "Synthetic identifiers checked against fixture definition." } ], "relations": [ { "targetVersionId": "22222222-2222-4222-8222-222222222222", "relationType": "definition_for", "status": "verified", "evidenceNote": "Synthetic fixture definition shares verified release context." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-a2l.a2l" Content-Type: application/octet-stream < ./fixtures/synthetic-a2l.a2l --redline-tuning-example-- ### Multipart example: document (synthetic; replace relationship UUIDs) POST {{baseUrl}}/admin/files Origin: {{origin}} X-CSRF-Token: {{csrf}} Idempotency-Key: {{idempotencyKey}} Content-Type: multipart/form-data; boundary=redline-tuning-example --redline-tuning-example Content-Disposition: form-data; name="metadata" Content-Type: application/json { "kind": "document", "title": "Synthetic read report", "versionLabel": "Report 1", "relations": [ { "targetVersionId": "22222222-2222-4222-8222-222222222222", "relationType": "documentation_for", "status": "candidate", "evidenceNote": "Staff review pending for this synthetic fixture." } ] } --redline-tuning-example Content-Disposition: form-data; name="file"; filename="synthetic-document.pdf" Content-Type: application/octet-stream < ./fixtures/synthetic-document.pdf --redline-tuning-example-- ### Preflight example OPTIONS {{baseUrl}}/me Origin: {{origin}} Access-Control-Request-Method: PATCH Access-Control-Request-Headers: content-type,x-csrf-token,if-match # Save binary responses as raw files; compare SHA-256 and cmp with input bytes. # Do not treat non-2xx application/problem+json as a successful binary download.