naftiko: 1.0.0-alpha2 info: label: Adyen Legal Entity Management API — legalEntities description: 'Adyen Legal Entity Management API — legalEntities. 15 operations. Lead operation: Adyen Create a Legal Entity. Self-contained Naftiko capability covering one Adyen business surface.' tags: - Adyen - legalEntities created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ADYEN_API_KEY: ADYEN_API_KEY capability: consumes: - type: http namespace: legal-entity-legalentities baseUri: https://kyc-test.adyen.com/lem/v3 description: Adyen Legal Entity Management API — legalEntities business capability. Self-contained, no shared references. resources: - name: legalEntities path: /legalEntities operations: - name: postlegalentities method: POST description: Adyen Create a Legal Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: x-requested-verification-code in: header type: string description: Use a suberror code as your requested verification code. You can include one code at a time in your request header. Requested verification codes can only be use - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id path: /legalEntities/{id} operations: - name: getlegalentitiesid method: GET description: Adyen Get a Legal Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. required: true - name: patchlegalentitiesid method: PATCH description: Adyen Update a Legal Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. required: true - name: x-requested-verification-code in: header type: string description: Use the requested verification code 0_0001 to resolve any suberrors associated with the legal entity. Requested verification codes can only be used in your test - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-businessLines path: /legalEntities/{id}/businessLines operations: - name: getlegalentitiesidbusinesslines method: GET description: Adyen Get All Business Lines Under a Legal Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. required: true - name: legalEntities-id-checkVerificationErrors path: /legalEntities/{id}/checkVerificationErrors operations: - name: postlegalentitiesidcheckverificationerrors method: POST description: Adyen Check a Legal Entity's Verification Errors outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. required: true - name: legalEntities-id-confirmDataReview path: /legalEntities/{id}/confirmDataReview operations: - name: postlegalentitiesidconfirmdatareview method: POST description: Adyen Confirm Data Review outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. required: true - name: legalEntities-id-onboardingLinks path: /legalEntities/{id}/onboardingLinks operations: - name: postlegalentitiesidonboardinglinks method: POST description: Adyen Get a Link to an Adyen-hosted Onboarding Page outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity required: true - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-pciQuestionnaires path: /legalEntities/{id}/pciQuestionnaires operations: - name: getlegalentitiesidpciquestionnaires method: GET description: Adyen Get PCI Questionnaire Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity to get PCI questionnaire information. required: true - name: legalEntities-id-pciQuestionnaires-generatePciTemplates path: /legalEntities/{id}/pciQuestionnaires/generatePciTemplates operations: - name: postlegalentitiesidpciquestionnairesgeneratepcitemplates method: POST description: Adyen Generate PCI Questionnaire outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity to get PCI questionnaire information. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-pciQuestionnaires-signPciTemplates path: /legalEntities/{id}/pciQuestionnaires/signPciTemplates operations: - name: postlegalentitiesidpciquestionnairessignpcitemplates method: POST description: Adyen Sign PCI Questionnaire outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The legal entity ID of the user that has a contractual relationship with your platform. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-pciQuestionnaires-pciid path: /legalEntities/{id}/pciQuestionnaires/{pciid} operations: - name: getlegalentitiesidpciquestionnairespciid method: GET description: Adyen Get PCI Questionnaire outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The legal entity ID of the individual who signed the PCI questionnaire. required: true - name: pciid in: path type: string description: The unique identifier of the signed PCI questionnaire. required: true - name: legalEntities-id-termsOfService path: /legalEntities/{id}/termsOfService operations: - name: postlegalentitiesidtermsofservice method: POST description: Adyen Get Terms of Service Document outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. For sole proprietorships, this is the individual legal entity ID of the owner. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-termsOfService-termsofservicedocumentid path: /legalEntities/{id}/termsOfService/{termsofservicedocumentid} operations: - name: patchlegalentitiesidtermsofservicetermsofservicedocumentid method: PATCH description: Adyen Accept Terms of Service outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. For sole proprietorships, this is the individual legal entity ID of the owner. required: true - name: termsofservicedocumentid in: path type: string description: The unique identifier of the Terms of Service document. required: true - name: body in: body type: object description: Request body (JSON). required: false - name: legalEntities-id-termsOfServiceAcceptanceInfos path: /legalEntities/{id}/termsOfServiceAcceptanceInfos operations: - name: getlegalentitiesidtermsofserviceacceptanceinfos method: GET description: Adyen Get Terms of Service Information for a Legal Entity outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. For sole proprietorships, this is the individual legal entity ID of the owner. required: true - name: legalEntities-id-termsOfServiceStatus path: /legalEntities/{id}/termsOfServiceStatus operations: - name: getlegalentitiesidtermsofservicestatus method: GET description: Adyen Get Terms of Service Status outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string description: The unique identifier of the legal entity. For sole proprietorships, this is the individual legal entity ID of the owner. required: true authentication: type: apikey key: X-API-Key value: '{{env.ADYEN_API_KEY}}' placement: header exposes: - type: rest namespace: legal-entity-legalentities-rest port: 8080 description: REST adapter for Adyen Legal Entity Management API — legalEntities. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/legalentities name: legalentities description: REST surface for legalEntities. operations: - method: POST name: postlegalentities description: Adyen Create a Legal Entity call: legal-entity-legalentities.postlegalentities with: x-requested-verification-code: rest.x-requested-verification-code body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id} name: legalentities-id description: REST surface for legalEntities-id. operations: - method: GET name: getlegalentitiesid description: Adyen Get a Legal Entity call: legal-entity-legalentities.getlegalentitiesid with: id: rest.id outputParameters: - type: object mapping: $. - method: PATCH name: patchlegalentitiesid description: Adyen Update a Legal Entity call: legal-entity-legalentities.patchlegalentitiesid with: id: rest.id x-requested-verification-code: rest.x-requested-verification-code body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/businesslines name: legalentities-id-businesslines description: REST surface for legalEntities-id-businessLines. operations: - method: GET name: getlegalentitiesidbusinesslines description: Adyen Get All Business Lines Under a Legal Entity call: legal-entity-legalentities.getlegalentitiesidbusinesslines with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/checkverificationerrors name: legalentities-id-checkverificationerrors description: REST surface for legalEntities-id-checkVerificationErrors. operations: - method: POST name: postlegalentitiesidcheckverificationerrors description: Adyen Check a Legal Entity's Verification Errors call: legal-entity-legalentities.postlegalentitiesidcheckverificationerrors with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/confirmdatareview name: legalentities-id-confirmdatareview description: REST surface for legalEntities-id-confirmDataReview. operations: - method: POST name: postlegalentitiesidconfirmdatareview description: Adyen Confirm Data Review call: legal-entity-legalentities.postlegalentitiesidconfirmdatareview with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/onboardinglinks name: legalentities-id-onboardinglinks description: REST surface for legalEntities-id-onboardingLinks. operations: - method: POST name: postlegalentitiesidonboardinglinks description: Adyen Get a Link to an Adyen-hosted Onboarding Page call: legal-entity-legalentities.postlegalentitiesidonboardinglinks with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/pciquestionnaires name: legalentities-id-pciquestionnaires description: REST surface for legalEntities-id-pciQuestionnaires. operations: - method: GET name: getlegalentitiesidpciquestionnaires description: Adyen Get PCI Questionnaire Details call: legal-entity-legalentities.getlegalentitiesidpciquestionnaires with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/pciquestionnaires/generatepcitemplates name: legalentities-id-pciquestionnaires-generatepcitemplates description: REST surface for legalEntities-id-pciQuestionnaires-generatePciTemplates. operations: - method: POST name: postlegalentitiesidpciquestionnairesgeneratepcitemplates description: Adyen Generate PCI Questionnaire call: legal-entity-legalentities.postlegalentitiesidpciquestionnairesgeneratepcitemplates with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/pciquestionnaires/signpcitemplates name: legalentities-id-pciquestionnaires-signpcitemplates description: REST surface for legalEntities-id-pciQuestionnaires-signPciTemplates. operations: - method: POST name: postlegalentitiesidpciquestionnairessignpcitemplates description: Adyen Sign PCI Questionnaire call: legal-entity-legalentities.postlegalentitiesidpciquestionnairessignpcitemplates with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/pciquestionnaires/{pciid} name: legalentities-id-pciquestionnaires-pciid description: REST surface for legalEntities-id-pciQuestionnaires-pciid. operations: - method: GET name: getlegalentitiesidpciquestionnairespciid description: Adyen Get PCI Questionnaire call: legal-entity-legalentities.getlegalentitiesidpciquestionnairespciid with: id: rest.id pciid: rest.pciid outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/termsofservice name: legalentities-id-termsofservice description: REST surface for legalEntities-id-termsOfService. operations: - method: POST name: postlegalentitiesidtermsofservice description: Adyen Get Terms of Service Document call: legal-entity-legalentities.postlegalentitiesidtermsofservice with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/termsofservice/{termsofservicedocumentid} name: legalentities-id-termsofservice-termsofservicedocumentid description: REST surface for legalEntities-id-termsOfService-termsofservicedocumentid. operations: - method: PATCH name: patchlegalentitiesidtermsofservicetermsofservicedocumentid description: Adyen Accept Terms of Service call: legal-entity-legalentities.patchlegalentitiesidtermsofservicetermsofservicedocumentid with: id: rest.id termsofservicedocumentid: rest.termsofservicedocumentid body: rest.body outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/termsofserviceacceptanceinfos name: legalentities-id-termsofserviceacceptanceinfos description: REST surface for legalEntities-id-termsOfServiceAcceptanceInfos. operations: - method: GET name: getlegalentitiesidtermsofserviceacceptanceinfos description: Adyen Get Terms of Service Information for a Legal Entity call: legal-entity-legalentities.getlegalentitiesidtermsofserviceacceptanceinfos with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/legalentities/{id}/termsofservicestatus name: legalentities-id-termsofservicestatus description: REST surface for legalEntities-id-termsOfServiceStatus. operations: - method: GET name: getlegalentitiesidtermsofservicestatus description: Adyen Get Terms of Service Status call: legal-entity-legalentities.getlegalentitiesidtermsofservicestatus with: id: rest.id outputParameters: - type: object mapping: $. - type: mcp namespace: legal-entity-legalentities-mcp port: 9090 transport: http description: MCP adapter for Adyen Legal Entity Management API — legalEntities. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: adyen-create-legal-entity description: Adyen Create a Legal Entity hints: readOnly: false destructive: false idempotent: false call: legal-entity-legalentities.postlegalentities with: x-requested-verification-code: tools.x-requested-verification-code body: tools.body outputParameters: - type: object mapping: $. - name: adyen-get-legal-entity description: Adyen Get a Legal Entity hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesid with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-update-legal-entity description: Adyen Update a Legal Entity hints: readOnly: false destructive: false idempotent: true call: legal-entity-legalentities.patchlegalentitiesid with: id: tools.id x-requested-verification-code: tools.x-requested-verification-code body: tools.body outputParameters: - type: object mapping: $. - name: adyen-get-all-business-lines description: Adyen Get All Business Lines Under a Legal Entity hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesidbusinesslines with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-check-legal-entity-s-verification description: Adyen Check a Legal Entity's Verification Errors hints: readOnly: true destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidcheckverificationerrors with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-confirm-data-review description: Adyen Confirm Data Review hints: readOnly: false destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidconfirmdatareview with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-get-link-adyen-hosted description: Adyen Get a Link to an Adyen-hosted Onboarding Page hints: readOnly: true destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidonboardinglinks with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: adyen-get-pci-questionnaire-details description: Adyen Get PCI Questionnaire Details hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesidpciquestionnaires with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-generate-pci-questionnaire description: Adyen Generate PCI Questionnaire hints: readOnly: false destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidpciquestionnairesgeneratepcitemplates with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: adyen-sign-pci-questionnaire description: Adyen Sign PCI Questionnaire hints: readOnly: false destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidpciquestionnairessignpcitemplates with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: adyen-get-pci-questionnaire description: Adyen Get PCI Questionnaire hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesidpciquestionnairespciid with: id: tools.id pciid: tools.pciid outputParameters: - type: object mapping: $. - name: adyen-get-terms-service-document description: Adyen Get Terms of Service Document hints: readOnly: true destructive: false idempotent: false call: legal-entity-legalentities.postlegalentitiesidtermsofservice with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: adyen-accept-terms-service description: Adyen Accept Terms of Service hints: readOnly: false destructive: false idempotent: true call: legal-entity-legalentities.patchlegalentitiesidtermsofservicetermsofservicedocumentid with: id: tools.id termsofservicedocumentid: tools.termsofservicedocumentid body: tools.body outputParameters: - type: object mapping: $. - name: adyen-get-terms-service-information description: Adyen Get Terms of Service Information for a Legal Entity hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesidtermsofserviceacceptanceinfos with: id: tools.id outputParameters: - type: object mapping: $. - name: adyen-get-terms-service-status description: Adyen Get Terms of Service Status hints: readOnly: true destructive: false idempotent: true call: legal-entity-legalentities.getlegalentitiesidtermsofservicestatus with: id: tools.id outputParameters: - type: object mapping: $.