getOrCreateAgreement
Get an existing agreement or create a new one if it doesn't exist.
Arguments
Input fields for getting or creating an agreement.
Possible Errors
- KT-CT-1113: Disabled GraphQL field requested.
- KT-CT-1503: Agreement valid_to date must be later than valid_from date.
- KT-CT-1509: Unable to create agreement.
- KT-CT-1511: Cannot create overlapping agreement.
- KT-CT-1512: Account type does not support agreements.
- KT-CT-4123: Unauthorized.
- KT-CT-4719: No supply point found for identifier provided.
- KT-CT-4910: No product exists with the given input.
- KT-CT-7899: An internal error occurred.
Allowed Viewers
Required Permissions
Can create agreements Can query agreementsQuery Complexity
1Examples
The example data in the variables and responses below are autogenerated values designed to resemble real inputs. They do not represent actual customer data, and in some cases may require additional validation.
mutation GetOrCreateAgreement($input: CreateAgreementInput!) {
getOrCreateAgreement(input: $input) {
agreement {
...CommonAgreementTypeFragment
}
created
}
}
Variables
{
"input": CreateAgreementInput
}
Response
{
"data": {
"getOrCreateAgreement": {
"agreement": CommonAgreementType,
"created": true
}
}
}