Adicionando aditivos a contratos
Para adicionar um aditivo a um contrato, utilizamos a mutation Contract_linkAmendmentContract
. Essa mutation recebe o input
Contract_linkAmendmentContract
e retorna um objeto do tipo contract_linkamendmentcontract_output
.
Exemplo
No exemplo abaixo, a mutation Contract_linkAmendmentContract
é utilizada para adicionar um aditivo a um contrato. O contrato principal (parentContractId
) é identificado pelo id
e o contrato aditivo (contractIdsToBeLinked
) é identificado pelo id
.
graphql
mutation LinkAmendmentContract($parentContractId: ID!, $contractIdsToBeLinked: [ID!]!) {
Contract_linkAmendmentContract(input: {
parentContractId: $parentContractId,
contractIdsToBeLinked: $contractIdsToBeLinked
}) {
... on Contract_LinkAmendmentContract_Success {
contract {
id
slug
value
currency
amendments {
id
slug
value
currency
}
}
}
... on Contract_LinkAmendmentContract_Failures {
failures {
... on Error {
message
}
}
}
}
}
js
async function linkAmendment(parentContractId, contractIdsToBeLinked) {
const response = await fetch('https://core-api.linte.com/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'key': '<seu-token>'
},
body: JSON.stringify({
query: `
mutation LinkAmendmentContract($parentContractId: ID!, $contractIdsToBeLinked: [ID!]!) {
Contract_linkAmendmentContract(input: {
parentContractId: $parentContractId,
contractIdsToBeLinked: $contractIdsToBeLinked
}) {
... on Contract_LinkAmendmentContract_Success {
contract {
id
slug
value
currency
amendments {
id
slug
value
currency
}
}
}
... on Contract_LinkAmendmentContract_Failures {
failures {
... on Error {
message
}
}
}
}
}
`,
variables: {
parentContractId,
contractIdsToBeLinked
}
})
});
const result = await response.json();
console.log(result);
}
python
import requests
def link_amendment(parent_contract_id, contract_ids_to_be_linked):
response = requests.post(
'https://core-api.linte.com/graphql',
headers={
'Content-Type': 'application/json',
'key': '<seu-token>'
},
json={
'query': '''
mutation LinkAmendmentContract($parentContractId: ID!, $contractIdsToBeLinked: [ID!]!) {
Contract_linkAmendmentContract(input: {
parentContractId: $parentContractId,
contractIdsToBeLinked: $contractIdsToBeLinked
}) {
... on Contract_LinkAmendmentContract_Success {
contract {
id
slug
value
currency
amendments {
id
slug
value
currency
}
}
}
... on Contract_LinkAmendmentContract_Failures {
failures {
... on Error {
message
}
}
}
}
}
''',
'variables': {
'parentContractId': parent_contract_id,
'contractIdsToBeLinked': contract_ids_to_be_linked
}
}
)
print(response.json())
if __name__ == '__main__':
link_amendment('<id-do-contrato-principal>', ['<id-do-contrato-aditivo>'])