{"openapi":"3.1.0","info":{"title":"LinkMax Co-development Link","version":"8.0.0","description":"Provider-neutral, customer-isolated coordination. A link never creates repository or infrastructure rights."},"servers":[{"url":"https://linkmax.scanners.cc"}],"paths":{"/v9/agent-connect":{"get":{"operationId":"getComprehensiveServiceInformationManifest","responses":{"200":{"description":"Existing-connection comprehensive information refresh contract"}}}},"/v8/agent-connect":{"get":{"operationId":"getModuleTransferManifest","responses":{"200":{"description":"Self-describing module transfer contract"}}}},"/v5/agent-connect":{"get":{"operationId":"getMultiAiManifest","responses":{"200":{"description":"Manifest"}}}},"/v5/twins/{twinId}/ai-participants":{"get":{"operationId":"listAiParticipants","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Participants"}}},"post":{"operationId":"registerAiParticipant","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["providerFamily","modelName","displayName","agentInstanceId","roles","capabilities","transports","authority"],"properties":{"providerFamily":{"type":"string"},"modelName":{"type":"string"},"displayName":{"type":"string"},"agentInstanceId":{"type":"string"},"roles":{"type":"array","items":{"type":"string"}},"capabilities":{"type":"array","items":{"type":"string"}},"transports":{"type":"array","items":{"type":"string"}},"authority":{"type":"object"}}}}}},"responses":{"201":{"description":"Participant and one-time access token"}}}},"/v5/twins/{twinId}/co-developers":{"post":{"operationId":"registerCompleteCoDeveloper","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["providerFamily","modelName","displayName","agentInstanceId","transports","authority"],"properties":{"providerFamily":{"type":"string"},"modelName":{"type":"string"},"displayName":{"type":"string"},"agentInstanceId":{"type":"string"},"transports":{"type":"array","items":{"type":"string"}},"expiresAt":{"type":"string","format":"date-time"},"authority":{"type":"object"}}}}}},"responses":{"201":{"description":"Complete co-developer entitlement and one-time participant token"}}}},"/v5/twins/{twinId}/co-development-rights":{"get":{"operationId":"getCoDevelopmentRights","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Rights catalog and entitlement history"}}}},"/v7/twins/{twinId}/co-development-link":{"get":{"operationId":"getPermanentCoDevelopmentLink","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Current permanent project-named link metadata"}}},"post":{"operationId":"createPermanentCoDevelopmentLink","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Permanent project-named capability link"}}}},"/v7/twins/{twinId}/co-development-link/revoke":{"post":{"operationId":"revokePermanentCoDevelopmentLink","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Link revoked"}}}},"/v8/twins/{twinId}/module-transfers":{"get":{"operationId":"listModuleTransferReceipts","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Customer-isolated transfer receipts"}}},"post":{"operationId":"createModuleTransfer","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["bundle","files","noSecretsIncluded"],"properties":{"idempotencyKey":{"type":"string","maxLength":240},"noSecretsIncluded":{"type":"boolean","const":true},"licenseOrUsage":{"type":"string","maxLength":240},"sourceReference":{"type":"string","maxLength":500},"tests":{"type":"object"},"bundle":{"type":"object","required":["name","version"],"properties":{"name":{"type":"string","maxLength":160},"version":{"type":"string","maxLength":80},"description":{"type":"string","maxLength":2000}}},"files":{"type":"array","minItems":1,"maxItems":64,"items":{"type":"object","required":["path","bytes","sha256","mime"],"properties":{"path":{"type":"string","maxLength":240},"bytes":{"type":"integer","minimum":1,"maximum":10485760},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mime":{"type":"string"}}}}}}}}},"responses":{"200":{"description":"Idempotent existing receipt"},"201":{"description":"Accepted manifest and upload paths"}}}},"/v8/twins/{twinId}/module-transfers/{transferId}":{"get":{"operationId":"getModuleTransferReceipt","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"transferId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Append-only transfer receipt"}}}},"/v8/twins/{twinId}/module-transfers/{transferId}/files/{fileIndex}":{"get":{"operationId":"downloadModuleTransferFile","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"transferId","in":"path","required":true,"schema":{"type":"string"}},{"name":"fileIndex","in":"path","required":true,"schema":{"type":"integer","minimum":0}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Declared stored file"}}},"put":{"operationId":"uploadModuleTransferFile","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"transferId","in":"path","required":true,"schema":{"type":"string"}},{"name":"fileIndex","in":"path","required":true,"schema":{"type":"integer","minimum":0}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"responses":{"200":{"description":"Idempotent file receipt"},"201":{"description":"Immutable file receipt"}}}},"/v8/twins/{twinId}/module-transfers/{transferId}/complete":{"post":{"operationId":"completeModuleTransfer","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"transferId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Existing completion receipt"},"201":{"description":"File-count, byte-count and SHA-256 verified completion receipt"}}}},"/co-develop/{projectName}/{linkToken}":{"get":{"operationId":"readPermanentCoDevelopmentLink","responses":{"200":{"description":"Project identity and enrollment instructions"}}},"post":{"operationId":"enrollFromPermanentCoDevelopmentLink","responses":{"201":{"description":"Permanent complete co-developer token"}}}},"/co-develop/{projectName}/{linkToken}/sync":{"get":{"operationId":"pullContinuousCoDevelopmentUpdates","security":[{"bearerAuth":[]}],"parameters":[{"name":"cursor","in":"query","schema":{"type":"integer","minimum":0,"default":0}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200,"default":100}}],"responses":{"200":{"description":"Current baseline, effective rights and updates after cursor"}}},"post":{"operationId":"publishOrAcknowledgeCoDevelopmentUpdate","security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["clientEventId","baseRevision","category","eventType","changeType","summary"],"properties":{"clientEventId":{"type":"string","maxLength":160},"baseRevision":{"type":"integer","minimum":0},"category":{"type":"string","enum":["project_manifest","repository_state","architecture","requirements","decisions","tasks","code_changes","tests","builds","deployments","incidents","dependencies","environments","data_models","apis","permissions","risks","documentation","releases","operations"]},"eventType":{"type":"string","enum":["snapshot","created","changed","deleted","status_changed","permission_observed","permission_authorized","checkpoint","message"]},"changeType":{"type":"string","enum":["upsert","append","remove","observe","authorize"]},"summary":{"type":"string","minLength":1,"maxLength":1000},"payload":{"type":"object"},"evidenceRefs":{"type":"array","maxItems":40,"items":{"type":"string","maxLength":500}},"observedAt":{"type":"string","format":"date-time"}},"additionalProperties":false},{"type":"object","required":["action","acknowledgedRevision","clientReceiptId"],"properties":{"action":{"const":"acknowledge"},"acknowledgedRevision":{"type":"integer","minimum":0},"clientReceiptId":{"type":"string","maxLength":160}},"additionalProperties":false}]}}}},"responses":{"200":{"description":"Idempotent replay or acknowledgement"},"201":{"description":"Append-only development update"},"409":{"description":"Base revision conflict"}}}},"/v7/twins/{twinId}/co-development-sync":{"get":{"operationId":"controllerPullCoDevelopmentUpdates","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Controller sync feed"}}},"post":{"operationId":"controllerPublishAuthoritativeUpdate","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["clientEventId","baseRevision","category","eventType","changeType","summary"],"properties":{"clientEventId":{"type":"string","maxLength":160},"baseRevision":{"type":"integer","minimum":0},"category":{"type":"string","enum":["project_manifest","repository_state","architecture","requirements","decisions","tasks","code_changes","tests","builds","deployments","incidents","dependencies","environments","data_models","apis","permissions","risks","documentation","releases","operations"]},"eventType":{"type":"string","enum":["snapshot","created","changed","deleted","status_changed","permission_observed","permission_authorized","checkpoint","message"]},"changeType":{"type":"string","enum":["upsert","append","remove","observe","authorize"]},"summary":{"type":"string","minLength":1,"maxLength":1000},"payload":{"type":"object"},"evidenceRefs":{"type":"array","maxItems":40,"items":{"type":"string","maxLength":500}},"observedAt":{"type":"string","format":"date-time"}},"additionalProperties":false}}}},"responses":{"201":{"description":"Controller-authorized update"},"409":{"description":"Base revision conflict"}}}},"/v7/operator/managed-services":{"get":{"operationId":"listManagedServices","security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Always-maintained managed service registry"}}}},"/v2/operator/approvals/batch":{"post":{"operationId":"applyLinkMaxOneTimeBatchApproval","security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"approveAll":{"type":"boolean","const":true},"decision":{"type":"string","const":"approve_all"},"reason":{"type":"string","maxLength":2000},"authorityRef":{"type":"string","maxLength":240}},"anyOf":[{"required":["approveAll"]},{"required":["decision"]}],"additionalProperties":false}}}},"responses":{"200":{"description":"One-time LinkMax-side approval policy, automatically prepared or preserved project links, LinkMax-managed grants, and applied plans"},"401":{"description":"Operator authentication required"}}}},"/v5/twins/{twinId}/development-tasks":{"post":{"operationId":"createCoDevelopmentTask","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Development task"}}}},"/v5/twins/{twinId}/ai-workspace":{"get":{"operationId":"getMultiAiWorkspace","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Workspace"}}}},"/v5/twins/{twinId}/development-tasks/{taskId}/coordination":{"get":{"operationId":"getTaskCoordination","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"taskId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Coordination history"}}},"post":{"operationId":"coordinateDevelopmentTask","parameters":[{"name":"twinId","in":"path","required":true,"schema":{"type":"string"}},{"name":"taskId","in":"path","required":true,"schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["action","idempotencyKey"],"properties":{"action":{"type":"string"},"workstream":{"type":"string"},"recipientParticipantId":{"type":"string"},"leaseSeconds":{"type":"integer","minimum":60,"maximum":3600},"payload":{"type":"object"},"idempotencyKey":{"type":"string"}}}}}},"responses":{"201":{"description":"Coordination event"},"409":{"description":"Workstream already claimed"}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer"}}}}