https://pact.io logo
Join Slack
Powered by
# pactflow
  • l

    Lavanya

    10/27/2025, 10:47 AM
    Hi, Regarding x-chase-api-store-servers which is added in API Marketplace and old server values are removed from swagger (I mean servers.url property).This causes pactflow contract tests (go/pactflow) fail to determine basepath. And when we check with API Marketplace team , they mentioned API Marketplace doesn't allow servers.url in the spec by default due to policy. So can you assist with the alternate option to this to pactflow to work, because when we try to run the pactflow , it is failing with basepath is empty
    m
    • 2
    • 1
  • j

    Jun Yi

    10/28/2025, 9:52 AM
    Hi, I’m currently evaluating the PactFlow Enterprise trial and integrating it with Keycloak using SAML. During the setup, I encountered the following error from PactFlow:
    Copy code
    (saml) Authentication failure! invalid_ticket: OneLogin::RubySaml::ValidationError, Found an unexpected number of Signature Element. SAML Response rejected
    I reviewed the environment variable documentation here: https://docs.pactflow.io/docs/on-premises/environment-variables , but couldn’t find any variables related to configuring a SAML client ID or client secret. Could anyone please advise whether these settings are supported, or if there’s an alternative way to configure them for SAML integration with Keycloak? Thank you!
  • m

    Matt (pactflow.io / pact-js / pact-go)

    10/28/2025, 9:58 AM
    Can you explain what you're trying to do? Perhaps a link to the relevant keycloak section and I can take a look for you The general docs for SAML setup are here: https://docs.pactflow.io/docs/on-premises/authentication/saml There is an example setup here: https://docs.pactflow.io/docs/on-premises/authentication/saml#docker-compose-example They use all of the key features we support.
    j
    • 2
    • 4
  • w

    Wojciech Wroblewski

    11/03/2025, 4:26 PM
    Hi there, I'm trying to add https://github.com/pactflow/actions/tree/main/publish-provider-contract#example to my workflow file. But each time I'm getting errors
    Copy code
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services]   ☁  git clone '<https://code>.(...).com/pactflow/actions' # ref=v2
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services] [DEBUG]   cloning <https://code>.(...).com/pactflow/actions to /Users/(...)/.cache/act/pactflow-actions-publish-pact-files@v2
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services] Unable to clone <https://code>.(...).com/pactflow/actions refs/heads/v2: repository not found: Repository not found.
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services] repository not found: Repository not found.
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services] [DEBUG] skipping post step for 'Archive App Run Log'; step was not executed
    [run-consumer-contract-tests/Contract Tests - Consumer/Publish provider's contract for JS services] [DEBUG] skipping post step for 'pactflow/actions/publish-pact-files@v2'; step was not executed
    It looks like it's trying to get that action from our GHEC server. I also tried to set
    github-server-url
    first for checkout action. How should I use it when working on GHEC? Preferably not copying that action repo to our instance *I hope I used proper channel
    y
    • 2
    • 2
  • j

    Jun Yi

    11/10/2025, 8:45 AM
    Hi, I’d like to check if the on-prem version of PactFlow (enterprise v2.3.0) supports AI features such as MCP. Also, does MCP support Python? I encountered an error while trying it out on the cloud PactFlow:
    Copy code
    Error: MPC -32602: MCP error -32602: Invalid arguments for tool contract-testing_generate_pact_tests: [
      {
        "received": "python",
        "code": "invalid_enum_value",
        "options": [
          "javascript",
          "typescript",
          "java",
          "golang",
          "dotnet",
          "kotlin",
          "swift",
          "php"
        ],
        "path": [
          "language"
        ],
        "message": "Invalid enum value. Expected 'javascript' | 'typescript' | 'java' | 'golang' | 'dotnet' | 'kotlin' | 'swift' | 'php', received 'python'"
      }
    ]
    Thanks!
    m
    • 2
    • 7
  • f

    Fábio Rodrigues

    11/10/2025, 3:35 PM
    Hey there, is any way to pool/ get a response that says webhook finished executing after pactflow determines it needs to execute such a webhook?
    y
    • 2
    • 19
  • m

    Marlin Dalpozzo

    11/17/2025, 7:51 PM
    Hi friends! I'm trying to find a way to bulk delete contracts for a pacticipant (consumer or provider), ideally something programmatic like an API endpoint that we can use in our current contract testing system to clear out old obsolete contracts. We would want to delete all contracts older than some given date. Is this possible? I see some documentation on deleting pacts but i don't see this documented in the current Pactflow API docs .
    m
    • 2
    • 3
  • y

    Yousaf Nabi (pactflow.io)

    12/04/2025, 4:09 PM
    🎺 Swagger Contract Testing made it into 2025 DevOps Dozen Awards! PactFlow has been going through major changes for the better since joining the SmartBear fold. We are continually iterating and delivering features such as AI augmented contract testing capabilities such test generation/review, and a Swagger Studio integration enabling OpenAPI designers to get field level insight of consumer usage at design time, providing huge time saving for organisations of all sizes. We have lots more planned for the future and we couldn’t do it without you all, so thank you for using our tools, and always providing feedback. If you want to pay a little nod back to the engineering and product teams that make it possible, why not drop the team a vote Scroll down to #23 Swagger Contract Testing: Best New DevOps Tool. Voting takes less than 30 seconds, and the deadline is 31st December. Voting:- https://www.surveymonkey.com/r/DevOps-Dozen-2025 Full list:- https://devops.com/devops-dozen-2025-finalists-announced There are also lots of other categories too, so feel free to explore and vote for other tools, services, people, podcasts and conferences you love as well!
    💪 2
    🎉 1
  • v

    Victor Rincón

    12/05/2025, 6:04 PM
    Hello team, I am new to this Slack space, I hope it is fine to ask. I am trying to record a deployment to PactFlow and I am getting this error:
    Copy code
    Error making request to <https://myorg.pactflow.io/pacticipants/my-service-name/versions/my-version-here/deployed-versions/environment/my-environmnet-here> status=403 Forbidden. Either you are using a read only token for a request that requires a write token (the most likely cause), or you do not have the required permissions.
    I fear that the token that is being used does not have write rights. Does anyone where I can find documentation around how to create tokens for recording deployments for a given team in PactFlow? Thank you in advance!
    m
    • 2
    • 3
  • r

    Ruud Welling

    12/09/2025, 2:53 PM
    I am running into an API issue with the pactflow API. I have been using the following API call:
    Copy code
    curl -H "Accept: application/hal+json" -H "Authorization: Bearer $PACT_BROKER_TOKEN" https://${my_pact_org}.<http://pactflow.io/pacts/provider/${provider}/consumer/${consumer}/branch/main/latest|pactflow.io/pacts/provider/${provider}/consumer/${consumer}/branch/main/latest>"
    To retrieve the latest version of a contract between two applications on the main branch. This used to work fine for a long time, but since yesterday the response I get no longer contacts the pact
    interactions
    also the
    consumer
    and
    provider
    objects are missing in the json reponse. Did this API change? Is there any other way to retrieve the latest pact (on main) for a pair of applications?
    m
    y
    • 3
    • 28
  • p

    Paolo Laurenti

    12/15/2025, 8:42 AM
    Hello everyone 👋🏻. I was wondering why there's no way to set up a single secret accessible to all teams. This would be really useful, for example, if you have an OAuth token for Slack integration that teams could use in webhooks to be notified of failed provider verification. The token is the same for everybody, and currently, we need to duplicate the same secret for each team, which is quite inconvenient.
  • m

    Matt (pactflow.io / pact-js / pact-go)

    12/15/2025, 9:12 AM
    You can create a non team secret
  • p

    Paolo Laurenti

    12/15/2025, 9:17 AM
    @Matt (pactflow.io / pact-js / pact-go) Yes, but when I try to use it, it can only be used with webhooks not owned by any team (Team field None). If a webhook is owned by a specific team, it cannot use a non-team secret.
  • m

    Matt (pactflow.io / pact-js / pact-go)

    12/15/2025, 9:18 AM
    Ah right, yes that's a limitation.
  • p

    Paolo Laurenti

    12/15/2025, 9:27 AM
    Is there any specific reason for that? May I submit a request for improvement? 🙏🏻
  • m

    Matt (pactflow.io / pact-js / pact-go)

    12/15/2025, 10:36 AM
    I don’t recall the exact reasons, but probably we figured at the time that if you’re sharing secrets, then there’s no need to make the webhook team specific (because you don’t need to hide the details from them). But equally, you may not want others to mess with the webhook. I’ll put it in the backlog. It might be easy, or quite complicated - I’m not across that level of detail in the code!
    gratitude thank you 1
  • t

    tMck

    12/17/2025, 12:45 PM
    Hi, Bit of a broad query. We have a React Native application that is tested using a framework combining Maestro and Pact JS. The application is configured to point to the mock server provided by Pact JS, and we write contract tests to populate the mock server with the responses required for each scenario. An x-state parameter is used to control which responses are returned for a given test case. Maestro is then used to drive user interactions within the application. Once the contract tests have run, Pact files are generated. If we were to integrate with PactFlow, would it simply be a matter of publishing these generated Pact files to the interface, setting aside—for now—the role of the backend services in verifying and matching the contracts?
    m
    • 2
    • 4
  • a

    Adriano Tanoue

    02/23/2026, 3:20 PM
    Hello 👋 - I have BDCT setup for a couple of services, and am experimenting with webhooks to send messages when a new contract is published. I have webhooks set to be triggered by "Contract published" and "Contract published with changed content or tags" but in both cases the
    ${pactbroker.providerVersionNumber}
    and
    ${pactbroker.providerVersionBranch}
    variables are not available (blank). What is the concept I'm missing here?
    m
    • 2
    • 2
  • y

    Yousaf Nabi (pactflow.io)

    03/11/2026, 3:50 PM
    Hey everyone 👋 Gartner Peer Insights is currently gathering feedback from SmartBear users - be it PactFlow, Swagger, BugSnag, QMetry, Reflect or any of the other tools in our stable If you’re open to sharing your experience, Gartner is offering a number of $25 gift cards as a thank-you for leaving a review. Submit a review here We appreciate any feedback you’re willing to share!
    👀 1
  • n

    Norbert Gulácsi

    03/25/2026, 12:17 PM
    @Norbert Gulácsi has left the channel
  • y

    Yousaf Nabi (pactflow.io)

    03/26/2026, 10:49 AM
    <!here> - “Every change breaks someone’s workflow” (https://xkcd.com/1172/) This is true for APIs: schemas can be contracts - but usually they can’t, and alone they aren’t. Spec validation helps to ensure your API does what it says it does. Contract testing provides visibility into consumer behaviour. Together, they’re a powerful combination — and until now, you needed separate tools and workflows to get there. Today, we are proud to announce the release of Drift 🚀 Drift is our answer to: “does my API actually match its spec?“: ✅ Spec-driven - OpenAPI is the source of truth 👩‍💻 CLI-first - Run in dev, automate in pipelines 📝 Declarative - Deterministic, versioned-controllable test suites ✏️ Scriptable - Lua engine for hooks, custom validation and advanced workflows 🔌 Extensible - Add new capabilities through the plugin architecture 🙆 Flexible - Run standalone or embed into existing test frameworks ...and, of course, it’s fully integrated into PactFlow’s contract testing workflows to provide the API integrity checks needed in the age of AI, where APIs are created faster than ever and the cost of drift is higher than ever. Read more about why we built it and where we’re taking it 👉 https://pactflow.io/blog/schemas-can-be-contracts/ Have you run into API Drift before? Let me know in the thread - We’d love to hear from you 🧵
    👀 1
    👋 1
    m
    • 2
    • 1
  • p

    Piripi Martin

    04/13/2026, 4:47 AM
    Hi all I'm wondering if anyone has time for a quick chat or can answer a couple questions; I work at Heidi Health and we'd like to integrate pact for contract testing I'm wondering about using pact, and I'm confused as to if we have to spin up our running BE in order to validate FE pacts against it. This would mean we'd have to set state etc. I thought this goes against the principle of pact which is to avoid having to actually test against a live api.
    👋 1
    m
    b
    • 3
    • 2
  • m

    Marlin Dalpozzo

    04/28/2026, 8:09 PM
    Hi 👋 . Have there been very recent changes (yesterday/today) released in the pact broker contract format validation logic? Suddenly contracts that used to be successfully published to Pactflow are now being rejected for not meeting OpenAPI spec format protocols. Examples of errors we're seeing: - Missing info.version field being rejected - property '/paths/.../type' is not one of: ["array", "boolean", "integer", "number", "object", "string"] — for schemas using type: null - property '/paths/.../required' is invalid — for schemas with required: [] (empty array) - property '/paths/.../parameters' is invalid: error_type=uniqueItems — for duplicate parameter definitions - property '/paths/.../items/items' is not of type: object — for array items defined as array literals instead of schema objects These contracts have been publishing successfully for weeks/months without changes. Were stricter OAS 3.0 validation rules recently enforced?
    m
    • 2
    • 3
  • j

    Jaya Priya Mayandi

    06/05/2026, 3:05 AM
    Hi, We are encountering issues 403 error related to publishing pact contract with Pactflow broker. Please find the details below. Could someone help us fix these 403 errors happening suddenly?
    Copy code
    <TITLE>ERROR: The request could not be satisfied</TITLE>
    </HEAD><BODY>
    <H1>403 ERROR</H1>
    <H2>The request could not be satisfied.</H2>
    <HR noshade size="1px">
    Request blocked.
    We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner.
    <BR clear="all">
    If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation.
    m
    j
    +2
    • 5
    • 21
  • p

    Piripi Martin

    06/24/2026, 4:13 AM
    Hi, when using the can i deploy GH action, failures are not verbose, is there an easy way to show exact failure reasons in a nice readable way in CI output?
    m
    • 2
    • 18
  • d

    Dale

    07/17/2026, 8:21 AM
    Hi there. Does pactflow have the ability to clean up old versions? I see the self hosted pact broker has this ability docs.pact.io/pact_broker/administration/maintenance
    m
    • 2
    • 13
  • w

    Wojciech Wroblewski

    07/22/2026, 2:31 PM
    Hi team, recently publishing contract for one of providers in our org started throwing error. It worked correctly Jul 16th, but 17th it started failing. The error :
    [{"detail":"contract content is not a valid OAS document: property '/components/securitySchemes/clientAuth/flows/clientCredentials/tokenUrl' does not match format: uri","pointer":"#/contract/content"},
    I compared current version and the last passing one, but it didn't change recently. Can you please advise?
    j
    m
    • 3
    • 3
  • w

    Wojciech Wroblewski

    07/23/2026, 11:25 AM
    We are deploying our services for different regions. Sometimes it's only one but sometimes it may be 3 different regions. It may happen that the deployment for some regions will fail and then we may have different code (and by that also contract) version. We can handle registering different versions to different environments. I'm wondering if there is any feature which allows us to say something like 'can-i-deploy to any of production evnironment'? I mean any option of grouping environments or handling that in any other way? I know that I can hardcode multiple checks, but as I mentioned not all pacticipants deploy to all regions
    m
    r
    • 3
    • 6
  • q

    qhussai4

    08/05/2026, 2:19 PM
    Hi team, I currently have a dev working on pactflow. Currently between the two services BFF and BE when running on the CI pipeline the deployment is successful , however when using the Pactflow UI under viewing the contract , i can see the green check under verification , however the api shows a warning symbol. I have observed on a example contract (petstore) each API request has a green tick instead of the warning symbol. The questions i have are 1. Does the Warning symbol invalidate the test? i.e it doesn't confirm it is passing nor failing. 2. is it a false positive? , the dev thinks because its passing verification, it is technically passing? 3. The Devs comments on resolving the warning - The Spectral ruleset requires Authorization, Content-Type and Accept headers to be explicitly defined so we can’t remove Content-Type from the API spec. Removing it from the BFF Pact causes contract verification to fail but keeping it gives the Pact test warning because the GET has no request body/MIME type to consume. Since the contract verification passes, looks like we’ll have to ignore this Pact test warning unless the ruleset is changed. 4. Whats the best solution for the issues highlighted above
    m
    • 2
    • 3
  • a

    Abdullah Safdar Ali

    08/13/2026, 9:48 PM
    Hi. In the blog published in May it is mentioned ‘Expanding the BDCT experience to support more API specification formats, such as AsyncAPI, ensuring teams can use BDCT regardless of their API specification format, especially in multi-protocol environments. This is being actively worked on, with support for AsyncAPI expected to be released in the coming months https://docs.pact.io/blog/2026/05/22/pact-open-source-update-may-2026' Anyone can let me know if this is being worked on currently? Or if there was any update after May? Thanks
    y
    • 2
    • 1