naftiko: 1.0.0-alpha2 info: label: Didomi Platform API — Organizations, Members, Privacy Centers, SSO description: Didomi Platform API — Organizations, Members, Privacy Centers, SSO. 29 operations. Self-contained Naftiko capability over the Didomi Platform REST API. tags: - Didomi - Consent Management - Privacy created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: DIDOMI_BEARER_TOKEN: DIDOMI_BEARER_TOKEN capability: consumes: - type: http namespace: organizations baseUri: https://api.didomi.io/v1 description: Didomi Platform API — Organizations, Members, Privacy Centers, SSO business capability against the Didomi Platform REST API (https://api.didomi.io/v1). resources: - name: platform-integrations-sessions path: /platform-integrations/sessions operations: - name: post-platform-integrations-sessions method: POST description: Mint JWT token for custodial platform integration outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). - name: languages path: /languages operations: - name: get-languages method: GET description: Retrieve list of available languages/locales outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: analytics-dashboards-urls path: /analytics/dashboards-urls operations: - name: get-analytics-dashboards-urls method: GET description: Retrieve a list of dashboards with signed URLs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: organizations path: /organizations operations: - name: get-organizations method: GET description: Retrieve a list of organizations outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: post-organizations method: POST description: Create an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). - name: organizations-id path: /organizations/{id} operations: - name: get-organizations-id method: GET description: Retrieve an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: put-organizations-id method: PUT description: Update an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: patch-organizations-id method: PATCH description: Patch an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: delete-organizations-id method: DELETE description: Delete an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: members path: /members operations: - name: get-members method: GET description: Retrieve a list of members of an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: post-members method: POST description: Add a user to an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). - name: members-id path: /members/{id} operations: - name: get-members-id method: GET description: Retrieve a member outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: patch-members-id method: PATCH description: Updates the resource identified by id using data. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: delete-members-id method: DELETE description: Remove a user from an organization outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: privacy-centers path: /privacy-centers operations: - name: get-privacy-centers method: GET description: Retrieve a list of privacy centers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: post-privacy-centers method: POST description: Create a privacy center outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). - name: privacy-centers-id path: /privacy-centers/{id} operations: - name: get-privacy-centers-id method: GET description: Retrieve a privacy center outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: put-privacy-centers-id method: PUT description: Update a privacy center outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: patch-privacy-centers-id method: PATCH description: Patch a privacy center outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: delete-privacy-centers-id method: DELETE description: Delete a privacy center outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: premium-features path: /premium-features operations: - name: get-premium-features method: GET description: Retrieve a list of premium features outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: premium-features-id path: /premium-features/{id} operations: - name: get-premium-features-id method: GET description: Retrieve a premium-feature outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: put-premium-features-id method: PUT description: Update a premium feature outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: patch-premium-features-id method: PATCH description: Patch a premium feature outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: sso-connections path: /sso-connections operations: - name: get-sso-connections method: GET description: Retrieve a list of SSO connections outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: post-sso-connections method: POST description: Create a SSO connection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). - name: sso-connections-id path: /sso-connections/{id} operations: - name: patch-sso-connections-id method: PATCH description: Patch a SSO connection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object required: true description: Request body (JSON). - name: organizations-source-systems path: /organizations-source-systems operations: - name: get-organizations-source-systems method: GET description: Retrieve a list of organization source systems outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: query in: query type: object required: false description: Optional query filters / pagination. - name: post-organizations-source-systems method: POST description: Create an organization source system mapping outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object required: true description: Request body (JSON). authentication: type: bearer value: '{{env.DIDOMI_BEARER_TOKEN}}' placement: header note: Obtain by POSTing api-key + secret to /v1/sessions and reusing access_token for up to one hour. exposes: - type: rest namespace: organizations-rest port: 8080 description: REST adapter for Didomi Platform API — Organizations, Members, Privacy Centers, SSO. One resource per consumed operation. resources: - path: /v1/platform-integrations/sessions name: platform-integrations-sessions description: REST surface for platform-integrations-sessions. operations: - method: POST name: post-platform-integrations-sessions description: Mint JWT token for custodial platform integration call: organizations.post-platform-integrations-sessions - path: /v1/languages name: languages description: REST surface for languages. operations: - method: GET name: get-languages description: Retrieve list of available languages/locales call: organizations.get-languages - path: /v1/analytics/dashboards-urls name: analytics-dashboards-urls description: REST surface for analytics-dashboards-urls. operations: - method: GET name: get-analytics-dashboards-urls description: Retrieve a list of dashboards with signed URLs call: organizations.get-analytics-dashboards-urls - path: /v1/organizations name: organizations description: REST surface for organizations. operations: - method: GET name: get-organizations description: Retrieve a list of organizations call: organizations.get-organizations - method: POST name: post-organizations description: Create an organization call: organizations.post-organizations - path: /v1/organizations/{id} name: organizations-id description: REST surface for organizations-id. operations: - method: GET name: get-organizations-id description: Retrieve an organization call: organizations.get-organizations-id - method: PUT name: put-organizations-id description: Update an organization call: organizations.put-organizations-id - method: PATCH name: patch-organizations-id description: Patch an organization call: organizations.patch-organizations-id - method: DELETE name: delete-organizations-id description: Delete an organization call: organizations.delete-organizations-id - path: /v1/members name: members description: REST surface for members. operations: - method: GET name: get-members description: Retrieve a list of members of an organization call: organizations.get-members - method: POST name: post-members description: Add a user to an organization call: organizations.post-members - path: /v1/members/{id} name: members-id description: REST surface for members-id. operations: - method: GET name: get-members-id description: Retrieve a member call: organizations.get-members-id - method: PATCH name: patch-members-id description: Updates the resource identified by id using data. call: organizations.patch-members-id - method: DELETE name: delete-members-id description: Remove a user from an organization call: organizations.delete-members-id - path: /v1/privacy-centers name: privacy-centers description: REST surface for privacy-centers. operations: - method: GET name: get-privacy-centers description: Retrieve a list of privacy centers call: organizations.get-privacy-centers - method: POST name: post-privacy-centers description: Create a privacy center call: organizations.post-privacy-centers - path: /v1/privacy-centers/{id} name: privacy-centers-id description: REST surface for privacy-centers-id. operations: - method: GET name: get-privacy-centers-id description: Retrieve a privacy center call: organizations.get-privacy-centers-id - method: PUT name: put-privacy-centers-id description: Update a privacy center call: organizations.put-privacy-centers-id - method: PATCH name: patch-privacy-centers-id description: Patch a privacy center call: organizations.patch-privacy-centers-id - method: DELETE name: delete-privacy-centers-id description: Delete a privacy center call: organizations.delete-privacy-centers-id - path: /v1/premium-features name: premium-features description: REST surface for premium-features. operations: - method: GET name: get-premium-features description: Retrieve a list of premium features call: organizations.get-premium-features - path: /v1/premium-features/{id} name: premium-features-id description: REST surface for premium-features-id. operations: - method: GET name: get-premium-features-id description: Retrieve a premium-feature call: organizations.get-premium-features-id - method: PUT name: put-premium-features-id description: Update a premium feature call: organizations.put-premium-features-id - method: PATCH name: patch-premium-features-id description: Patch a premium feature call: organizations.patch-premium-features-id - path: /v1/sso-connections name: sso-connections description: REST surface for sso-connections. operations: - method: GET name: get-sso-connections description: Retrieve a list of SSO connections call: organizations.get-sso-connections - method: POST name: post-sso-connections description: Create a SSO connection call: organizations.post-sso-connections - path: /v1/sso-connections/{id} name: sso-connections-id description: REST surface for sso-connections-id. operations: - method: PATCH name: patch-sso-connections-id description: Patch a SSO connection call: organizations.patch-sso-connections-id - path: /v1/organizations-source-systems name: organizations-source-systems description: REST surface for organizations-source-systems. operations: - method: GET name: get-organizations-source-systems description: Retrieve a list of organization source systems call: organizations.get-organizations-source-systems - method: POST name: post-organizations-source-systems description: Create an organization source system mapping call: organizations.post-organizations-source-systems - type: mcp namespace: organizations-mcp port: 9090 transport: http description: MCP adapter for Didomi Platform API — Organizations, Members, Privacy Centers, SSO. One tool per consumed operation. tools: - name: didomi-post-platform-integrations-sessions description: Mint JWT token for custodial platform integration hints: readOnly: false destructive: false idempotent: false call: organizations.post-platform-integrations-sessions - name: didomi-get-languages description: Retrieve list of available languages/locales hints: readOnly: true destructive: false idempotent: true call: organizations.get-languages - name: didomi-get-analytics-dashboards-urls description: Retrieve a list of dashboards with signed URLs hints: readOnly: true destructive: false idempotent: true call: organizations.get-analytics-dashboards-urls - name: didomi-get-organizations description: Retrieve a list of organizations hints: readOnly: true destructive: false idempotent: true call: organizations.get-organizations - name: didomi-post-organizations description: Create an organization hints: readOnly: false destructive: false idempotent: false call: organizations.post-organizations - name: didomi-get-organizations-id description: Retrieve an organization hints: readOnly: true destructive: false idempotent: true call: organizations.get-organizations-id - name: didomi-put-organizations-id description: Update an organization hints: readOnly: false destructive: false idempotent: true call: organizations.put-organizations-id - name: didomi-patch-organizations-id description: Patch an organization hints: readOnly: false destructive: false idempotent: false call: organizations.patch-organizations-id - name: didomi-delete-organizations-id description: Delete an organization hints: readOnly: false destructive: true idempotent: true call: organizations.delete-organizations-id - name: didomi-get-members description: Retrieve a list of members of an organization hints: readOnly: true destructive: false idempotent: true call: organizations.get-members - name: didomi-post-members description: Add a user to an organization hints: readOnly: false destructive: false idempotent: false call: organizations.post-members - name: didomi-get-members-id description: Retrieve a member hints: readOnly: true destructive: false idempotent: true call: organizations.get-members-id - name: didomi-patch-members-id description: Updates the resource identified by id using data. hints: readOnly: false destructive: false idempotent: false call: organizations.patch-members-id - name: didomi-delete-members-id description: Remove a user from an organization hints: readOnly: false destructive: true idempotent: true call: organizations.delete-members-id - name: didomi-get-privacy-centers description: Retrieve a list of privacy centers hints: readOnly: true destructive: false idempotent: true call: organizations.get-privacy-centers - name: didomi-post-privacy-centers description: Create a privacy center hints: readOnly: false destructive: false idempotent: false call: organizations.post-privacy-centers - name: didomi-get-privacy-centers-id description: Retrieve a privacy center hints: readOnly: true destructive: false idempotent: true call: organizations.get-privacy-centers-id - name: didomi-put-privacy-centers-id description: Update a privacy center hints: readOnly: false destructive: false idempotent: true call: organizations.put-privacy-centers-id - name: didomi-patch-privacy-centers-id description: Patch a privacy center hints: readOnly: false destructive: false idempotent: false call: organizations.patch-privacy-centers-id - name: didomi-delete-privacy-centers-id description: Delete a privacy center hints: readOnly: false destructive: true idempotent: true call: organizations.delete-privacy-centers-id - name: didomi-get-premium-features description: Retrieve a list of premium features hints: readOnly: true destructive: false idempotent: true call: organizations.get-premium-features - name: didomi-get-premium-features-id description: Retrieve a premium-feature hints: readOnly: true destructive: false idempotent: true call: organizations.get-premium-features-id - name: didomi-put-premium-features-id description: Update a premium feature hints: readOnly: false destructive: false idempotent: true call: organizations.put-premium-features-id - name: didomi-patch-premium-features-id description: Patch a premium feature hints: readOnly: false destructive: false idempotent: false call: organizations.patch-premium-features-id - name: didomi-get-sso-connections description: Retrieve a list of SSO connections hints: readOnly: true destructive: false idempotent: true call: organizations.get-sso-connections - name: didomi-post-sso-connections description: Create a SSO connection hints: readOnly: false destructive: false idempotent: false call: organizations.post-sso-connections - name: didomi-patch-sso-connections-id description: Patch a SSO connection hints: readOnly: false destructive: false idempotent: false call: organizations.patch-sso-connections-id - name: didomi-get-organizations-source-systems description: Retrieve a list of organization source systems hints: readOnly: true destructive: false idempotent: true call: organizations.get-organizations-source-systems - name: didomi-post-organizations-source-systems description: Create an organization source system mapping hints: readOnly: false destructive: false idempotent: false call: organizations.post-organizations-source-systems