Transaction information

When sending a transaction it returns an id, I saved it and two days later I wanted to pull the block to check it. And the transaction was giving me an error, I was using python-SDK(it works with new transactions so it should not be a bug in code). I saw that transaction has a valid block period, of max of 1000 blocks. Does this mean that once the 1000 block pass the transaction is no longer available in the node?

My best guess is that because the node has stored 1000 blocks on them, you will need to request this information from an archival node? Am I wrong?

Thanks in advance.

Yes, if your transactions was committed more than 1000 blocks ago, you need an archival node.

By default, nodes only keep the last 1000 blocks.

Thank you for your response.
Do I need to be connected to an archival node, or do I have to make a node that is archival. For example, I am connected to an archival relay, I should be able to get the transaction more than 1000 blocks old? Am I right?

You usually cannot connect to relays for API calls.

You either need to make the node you’re connecting to an archival node.
Or use an API service.